文档章节

基于storm做爬虫的可能性

book
 book
发布于 2013/11/13 18:05
字数 390
阅读 866
收藏 16

    OK,您的好奇心是对的,这里我想说,基于storm这个实时流计算框架去做爬虫,简直太完美了!

大概就长这个样子了,当然这是一个大框。



    众所周知,爬虫系统里几个必不可少的模块,像下载、解析、回写待爬资源、存储等,本质上他们像是一个责任链,但后一个module又基于前一个module,所以可以理解为一种流处理模型,从我们拿到待爬URL一直到处理完毕存储数据,这是一个完整的过程。如您看到的这张图,如果我们实现了storm化,那么基于storm强大的功能,我们的爬虫可以完美运行在storm集群上,并且每类处理器我们都可以非常灵活的分配其线程数,耗时的处理我们多开几个线程,可以实现资源合理利用,当然既然是集群,你的某个任务具体运行在哪里,storm已经帮您分配好了,并且帮我们实现了节点失效等处理。storm灰常好用,灰常简单,有兴趣的可以上网了解了解,当然本人也灰常愿意和大家交流,下班了,不扯了,赶快撤~~~~

最后如果bolt间传输的消息量比较大,有可能网络是个瓶颈,我们这边前段时间测试,100M交换机已经成了瓶颈,当然业务不是爬虫!

© 著作权归作者所有

book

book

粉丝 41
博文 22
码字总数 15217
作品 2
海淀
高级程序员
私信 提问
加载中

评论(2)

book
book 博主

引用来自“jianglibo”的评论

vertx使用单线程编程,根据需要启动多少个实例,从更高层次(非代码层次)使用多线程,如果用它做这个爬虫,也是不错的方案哦。

顶!vertx这个东西没了解过,谢谢分享!!

jianglibo
jianglibo
vertx使用单线程编程,根据需要启动多少个实例,从更高层次(非代码层次)使用多线程,如果用它做这个爬虫,也是不错的方案哦。
使用 Twitter Storm 处理实时的大数据

使用 Twitter Storm 处理实时的大数据 流式处理大数据简介 IBM DW/M. Tim Jones, 独立作家, 顾问 简介: Storm 是一个开源的、大数据处理系统,与其他系统不同,它旨在用于分布式实时处理且与...

IBMdW
2012/12/06
6.4K
3
Apache Storm 的历史及经验教训

Apache Storm 最近成为了ASF的顶级项目,这对于该项目和我个人而言是一个重大的里程碑。很难想像4年前Storm只是我脑海中的一个想法,但现在却成为了一个有着大社区支持并被无数企业使用的繁荣...

run_mei
2014/10/14
1.2W
10
storm启动卡着不动,求高手

刚把storm集群部好,结果启动时卡着不动。 执行:./storm nimbus 提示: [root@WY_CentOS_100G bin]# ./storm nimbus Running: java -server -Dstorm.options= -Dstorm.home=/usr/local/src......

lja
2013/07/11
2.2K
1
大数据处理 Hadoop、HBase、ElasticSearch、Storm、Kafka、Spark

场景 伴随着信息科技日新月异的发展,信息呈现出爆发式的膨胀,人们获取信息的途径也更加多样、更加便捷,同时对于信息的时效性要求也越来越高。举个搜索场景中的例子,当一个卖家发布了一条...

江河海流
2014/03/30
5.1K
0
Apache Slider + Storm

Apache Slider + Storm 系统环境 安装如下组件,部署可用环境 JDK 1.7.0_79 Apache Zookeeper 3.4.* Apache Zookeeper Apache Hadoop 2.6.* Apache Hadoop Apache Storm 0.9.4 Apache Storm......

Yulong_
2016/09/21
514
0

没有更多内容

加载失败,请刷新页面

加载更多

Vue造轮子-Tabs测试(下)

1. 如果g-tabs里面不是g-tabs-head,g-tabs-body期望会报错。 // 目前没有报错,所以先改 // tabs.vue if(this.$children.length===0){ // 这个$children是看子组件,不是子元...

ories
13分钟前
20
0
解决与二进制文件的Git冲突

我一直在Windows上使用Git(msysgit)来跟踪我一直在做的一些设计工作的变化。 今天我一直在使用不同的PC(使用远程repo brian ),我现在正尝试将今天完成的编辑合并到我的笔记本电脑上的常...

javail
13分钟前
33
0
忽略本地更改时会拉动Git?

有没有办法做一个git pull来忽略任何本地文件的更改,而又不浪费目录,也不必执行git clone ? #1楼 如果您使用的是Linux: git fetchfor file in `git diff origin/master..HEAD --name-o...

技术盛宴
28分钟前
38
0
Linux云主机安全加固

背景 最近在登录自己的云主机的时候,遇到了自己的机器被恶意的登录了几百次,如 Last failed login: Tue Feb 10 23:32:08 EST 2019 from xxx There were 166 failed login attempts since ...

项昂之
53分钟前
73
0
Java – Try with Resources

1. Overview Support for try-with-resources – introduced in Java 7 – allows us to declare resources to be used in a try block with the assurance that the resources will be clo......

Ciet
今天
53
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部