下载此文档

微服务实例-自制分布式爬虫系统-数人科技.pdf


文档分类:IT计算机 | 页数:约15页 举报非法文档有奖
1/15
下载提示
  • 1.该资料是网友上传的,本站提供全文预览,预览什么样,下载就什么样。
  • 2.下载该文档所得收入归上传者、原创者。
  • 3.下载的文档,不会出现我们的网址水印。
1/15 下载此文档
文档列表 文档介绍
自制分布式爬虫系统北京数人科技有限公司单机的All-In-One爬虫架构HAProxy利用JavaEE容器的线程池、有状态共享状态登陆控制模块解析JS、地区代理、URL调速抓取模块各地代理递归URLHTMLJSONXML抽取模块模板结果分布式和微服务是SilverBullet么?分布式和微服务的优点特定模块单独开发和测试(YES)容易对特定模块进行横向扩展(YES)整体可靠性更高(?)服务(以及代码)可以重用(YES)离线和在线类型服务可以混合部署(Great)做最坏的打算,祈祷最好的结果上云的CheckList服务单元功能越单一越好计算模块要做到无状态(不依赖本地I/O)任何服务都不能有单点,必须做集群可能的话,模块间接口尽量异步设计时做最坏打算——每个模块都可能失效,而且无法及时报警分布式的配置管理,RollingUpdate/Restart各个层面的集中式监控和日志方案……,建集群HAProxy中间结果控制服务控制服务抓取服务抓取服务抽取服务抽取服务尽量利用Docker本身多实例,避免复结果聚合结果聚合杂的多线程编程服务服务因为任务并行运行,所以需要保存中间结果,:异步、服务发现、、无状态、无状态JSONHAProxyURLHTMLSessionIDCookieSessionIDSessionIDSessionID控制服务控制服务抓取服务抓取服务抽取服务抽取服务SessionID结果聚合结果聚合ReddisCluster服务服务问题:(JSON)SessionID获取结果Step4集群化—服务发现、负载均衡HTTP接口ZooKeeper/etcd使用Marathon+Bamboo+HAProxy进行服务发现RabbitMQ接口通过监听MQ实现服务发现MongoDB如果不考虑自动扩展,使用既有的集群方案Reddis可以采用Codis方案Step5离线和在线服务混合部署离线服务吞吐很高,爬取模块队列经常破百万‐MQ集群化在线服务要求实时性‐队列设置优先级Step6全局配置热更新问题:如何全局改变常用小参数的配置(变化少,使用频繁)如何全局改变体量较大的全局共享数据(体积大、变化较多)写代码的时候提前做好热读取参数的机制PUSHPULL使用ZooKeeper/etcd来同步小使用Reddis之类配置服务器参数来存储较大的共享数据

微服务实例-自制分布式爬虫系统-数人科技 来自淘豆网m.daumloan.com转载请标明出处.

相关文档 更多>>
非法内容举报中心
文档信息
  • 页数15
  • 收藏数0 收藏
  • 顶次数0
  • 上传人文档大全
  • 文件大小2.23 MB
  • 时间2020-07-28
最近更新