1
0
mirror of https://github.com/chai2010/advanced-go-programming-book.git synced 2025-05-24 04:22:22 +00:00

update cr

This commit is contained in:
Xargin 2018-08-26 21:36:04 +08:00
parent a6def42123
commit 231db76c6b

View File

@ -92,3 +92,9 @@ func main() {
上游的主要工作是根据预先配置好的起点来爬取所有的目标“列表页”,列表页的 html 内容中会包含有所有详情页的链接。详情页的数量一般是列表页的 10~100 倍,所以我们将这些详情页链接作为“任务”内容,通过 mq 分发出去。
针对页面爬取来说,在执行时是否偶尔会有重复其实不太重要,因为任务结果是幂等的(这里我们只爬页面内容,不考虑评论部分)。
本节我们来简单实现一个基于消息队列的爬虫,为了演示方便,我们暂时用 redis 的 list 结构来作为消息队列。实际使用时,应该针对自己的业务对消息本身的可靠性要求和公司的基础架构组件情况进行选型。
### 消息生产
### 消息消费