使用zk作为注册中心,多实例无状态部署,应用启动时竞选leader,竞选成功的实例(leader)负责分发任务,其他实例(worker)负责执行任务,运行过程中leader挂掉的话自动重新竞选
spider.standalone
执行模式:true=本机模式 false=集群模式
select.worker.sleep.time
集群模式下,使用最小活跃任务数分发策略时,找不到可用worker时的等待时间ms
worker.max.active.task.count
worker最大活跃任务数
- 参考示例
DoubanTop250Task
DoubanTop250TaskDispatcher - 实现
com.rjay.wspider.service.task.Task
com.rjay.wspider.service.task.TaskDispatcher
spider.standalone=true
原地起飞
spider.standalone=false
- 部署zookeeper
- 修改application.properties中zookeeper.hostList
- 起飞