StormCrawler — это SDK с открытым исходным кодом для создания распределенных поисковых роботов с помощью Apache Storm. Проект находится под лицензией Apache v2 и состоит из набора повторно используемых ресурсов и компонентов, написанных в основном на Java.
Цель StormCrawler — помочь в создании поисковых роботов, которые:
масштабируемый устойчивый низкая задержка легко расширить вежливый, но эффективный
StormCrawler — это библиотека и набор ресурсов, которые разработчики могут использовать для создания собственных сканеров. Хорошая новость заключается в том, что сделать это может быть довольно просто. Часто все, что вам нужно сделать, это объявить storm-crawler как зависимость от Maven, написать свой собственный класс Topology (совет: вы можете расширить ConfigurableTopology), повторно использовать компоненты, предоставленные проектом, и, возможно, написать пару пользовательских. для вашего собственного секретного соуса. Немного подправил конфигурацию и готово!
Помимо основных компонентов, мы предоставляем некоторые внешние ресурсы, которые вы можете повторно использовать в своем проекте, например, наш носик и болты для ElasticSearch или ParserBolt, который использует Apache Tika для анализа различных форматов документов.
StormCrawler идеально подходит для случаев, когда URL-адреса для извлечения и анализа поступают в виде потоков, но также является подходящим решением для крупномасштабных рекурсивных обходов, особенно там, где требуется низкая задержка. Проект используется в производстве несколькими компаниями и активно развивается и поддерживается.