shixiaolong0
shixiaolong0

变化!如果今天的自己和昨天点自己没有差异,那么就是白活! 简书:https://www.jianshu.com/u/dd76e4af1f33 twitter:https://twitter.com/dragon72463399 rust学习笔记:https://dev.to/dragon72463399

爬虫架构设计

3.爬虫架构设计:

3.1 代码架构

3.2 自动化部署

3.3 集群弹性伸缩能力,负载均衡

3.4 日志系统

3.5 去重机制,布隆过滤

3.6 redis 队列设计,优化读写速度,避免bigkey

3.7 请求可追踪,数据可追踪:

3.7.1 请求去重设计

3.7.2 请求异常记录和重试

3.7.3 请求成功的url是否有存储的必要,如何存储

3.7.4 数据一级去重:Redis 布隆

3.7.5 数据ID存储表:MySQL :查询速度,写入速度,批量读取速度(定期批量刷新缓存),

3.7.6 结构化数据结果存储:ES?

3.7.7 原始数据长期存储,存储方案确定,MongoDB或者其他的,与3.7.5 ID关联 阿里云的lindorm 增强型的HBASE ;有点老了,而且会存在写热点问题,后期维护难度大,也比较笨重;另一个朋友佐证现在用的少不好用 新的框架 kudo或者clickhouse TIDB

3.8 爬虫健康状态监控

3.9 数据量监控

4.0 爬虫进度可感知,可查询,可监控

4.1 以上各种数据库的读写是否会影响爬虫的主进程,是否会阻塞,影响爬虫效率



CC BY-NC-ND 2.0 版权声明

喜欢我的文章吗?
别忘了给点支持与赞赏,让我知道创作的路上有你陪伴。

加载中…

发布评论