我应该使用akka.io、apachespark、mesos或storm作为网络爬虫引擎吗?

a6b3iqyw  于 2021-06-21  发布在  Mesos
关注(0)|答案(1)|浏览(252)

我用纯java和selenium构建了一个多线程web爬行和提取引擎。api中的每个作业在自己的线程中执行,并将其状态提交回api。每个作业还可以包含提取信息(xpth、regex、css选择器)、连接信息(代理凭据)和爬网引擎的挂钩。例如,在保存结果之前单击按钮。这个引擎工作得很好,但现在我想在多台机器上并行运行。我可以用目前的版本(有渠道支持)做到这一点,但我正在寻找改进和技术,使整个事情变得更好,学习一些新的东西。
我找到了akka.io、apachespark、apachemesos和apachestorm,并问自己这些框架中的一个是否可以成为一种技术,我应该花更多的时间研究并在上面重建我的引擎。
事实上,我不理解这些框架的所有区别和优点,但这就是为什么我要问这个问题。他们似乎很相似。
我的意图是建立一个爬行引擎与这些框架之一可能吗?有人建议使用框架吗?为什么?为什么不?

esyap4oy

esyap4oy1#

我之前帮助构建了一个渲染web爬虫,作为apachemesos的示例/教程应用程序。它当然没有你正在构建的那么复杂,但是它可能提供了一个很好的架构参考。你可以在https://github.com/mesosphere/rendler
mesos提供了许多分布式系统,用于启动任务、监视/发送状态、任务/调度器之间的通信、持久状态、故障切换等。有时我们喜欢将mesos称为分布式系统sdk。http://mesosphere.github.io/presentations/mesoscon-2014/

相关问题