/ 详情

记录几个思考

Backlog
owner
Opened this issue  
2016-01-17 01:31
  1. 可以配置page是否需要key重复检查,只对download有效
  2. 寻找更高效的Queue实现,比如BringBuffer(Disruptor)
  3. 整体驱动模式尝试Actor、Disruptor,看能否提高性能
  4. 优化DownloadWorker中302跳转的处理,不要创建新任务到队列里,而是直接在当前worker中重新download处理。这样既可以减少queue的占用,在分布式环境中还可以减少节点交互。
  5. 优化ExtracWorker中的FieldValue处理,特别是isForNewTask=true的字段处理,利用好多线程(Java8的stream)并行地将new url放入队列中。
  6. 配置文件在运行期也可以修改生效,但是仅限添加seed
  7. 合并Manager的统计信息到Spiderman结束的时候显示在log里。
  8. 客户端添加的ResultHandler回调方法参数里的long count换成Counter counter,可以获取当前计数以及limit等信息,这样可以用来关注进度
  9. 增加更多例子,包含:关键字搜索采集,电商产品采集,汽车车型大全采集,法律案件采集,微信搜索采集,微博采集,网易新闻采集,体育竞技比赛实时比分采集(有挑战!),多媒体采集(Doc,PPT,PDF,MP3,视频),图片下载采集,
  10. 调度器应用,支持增量采集,可以配置Page是否需要保证task key的唯一性。

Comments (4)

11.在队列元素对象里封装元素的唯一key,创建元素实例的时候就要指定key,若不想提供key,给null即可。

12.队列元素对象增加keyGroup,用来区分不同分组的key,方便调度重抓的时候可以删除指定group的队列元素。

Status changed to closed

自风 reopened 任务

重新打开,近期又花了点时间研究了下LMAX架构和Disruptor,发现其实很适合爬虫

Sign in to comment

状态
Assignees
Milestones
Pull Requests
关联的 Pull Requests 被合并后可能会关闭此 issue
Branches
Planed to start   -   Planed to end
-
Top level
Priority
参与者(1)
117 l weiwei 1578913730