Redis 七月小说网的爬虫缓存设计
- 2019 年 10 月 5 日
- 筆記
一、爬虫策略
1.主服务器先根据spider.all set排重,再 lpush request_url 到spider.wait List中,并且 sadd request_url 到 set中; 2.两台从服务器 brpop 出最后一条url 进行解析,再抓取数据;
二、缓存策略
1.主服务器通过爬取各类排行榜或首页等Book集合、简短字段的页面 创建多个不同key的Hash
expect => create {"siteId_bookId": Hash}
2.从服务器通过爬书详细页 更新单个key的部分Hash字段, 创建章节有序集合存放章节id ,生成request_url到spider.wait中
expect => update {"siteId_bookId": Hash} , create {"siteId_bookId_chapters": Sort Set}
3.从服务器通过爬章节详细页 创建章节Hash对象
expect => create {"siteId_bookId_chapterId": Hash}
4.从主服务器归并两个hash对象和一个sort set对象,生成Book信息导入数据库。