wangtao 写到:gyiang 写到:1、调度程序dailyScheduler,在站点任务循环一轮后,会有个休眠操作,问题出现在sleepTime设置不合理以及存在负值导致抛异常的可能。
除了调度持续之外,是否还存在其他影响持续稳定爬取的问题?
现在针对21个站点的爬虫是如何调度的,是否还存在跑一段时间后内存消耗过大的问题?
爬虫一直可以持续爬,之前偶尔的停止爬取原因是在调度上出了些bug,现在已经修复了。
数据也是持续向数据库写入的。
对站点采用轮询增量更新方式,原则上1天更新一轮,其中stackoverflow是持续爬取的,数据更新保持在1小时内。
我和运维组交流了下,内存消耗问题目前还不能判断是爬虫程序导致的,总物理内存16G,跑了4个虚拟机,其他虚拟机对内存的消耗都会导致爬虫这个虚拟机不能申请到足够的内存,显示的19g内存是虚的,实际可用内存也就5-6G
wangtao 写到:gyiang 写到:2、1.0足够用,引入adsl拨号后,已经加强了稳定性,没有ip被封的问题。
如果没有IP被封的问题,那么爬取速率会影响爬取的持续稳定性吗,为什么要调整爬取的速率设定呢?
另外,现在具体的速率设定是怎样的?
现在是加快了爬取速度,过慢爬取会使某一个站点的爬虫在内存中驻留时间太长,不能及时释放占用内存给其他站点爬虫。适当提高速度能增加稳定性,减少不必要的重复爬取。
加快爬取速度也是对adsl动态拨号的进一步测试。
gyiang 写到:1、调度程序dailyScheduler,在站点任务循环一轮后,会有个休眠操作,问题出现在sleepTime设置不合理以及存在负值导致抛异常的可能。
除了调度持续之外,是否还存在其他影响持续稳定爬取的问题?
现在针对21个站点的爬虫是如何调度的,是否还存在跑一段时间后内存消耗过大的问题?
gyiang 写到:2、1.0足够用,引入adsl拨号后,已经加强了稳定性,没有ip被封的问题。
如果没有IP被封的问题,那么爬取速率会影响爬取的持续稳定性吗,为什么要调整爬取的速率设定呢?
另外,现在具体的速率设定是怎样的?
1、调度程序dailyScheduler,在站点任务循环一轮后,会有个休眠操作,问题出现在sleepTime设置不合理以及存在负值导致抛异常的可能。
2、1.0足够用,引入adsl拨号后,已经加强了稳定性,没有ip被封的问题。
3、服务器内存异常我会找运维聊
针对1: 请具体说明是哪些问题、导致的原因和解决办法
针对2:目前1.0是否能保证持续稳定高效的爬取?除了爬取速率过快可能导致的被封之外,爬取速率与持续稳定爬取之间有什么因果关系?
针对3: 关于爬虫服务器内存异常的问题是否已确定原因?