在使用分区“host”对多个网站进行爬网时,根据主机生成分区密钥,也称为bucket。每个spout示例都有一个bucket来获取url。如果我只爬一个网站会怎么样?在这种情况下,我只有一个桶,这意味着只有一个示例的喷口将访问我的桶?如果一个bucket中的所有url都被爬网,那么在爬网多个网站的情况下,spout示例是否会移动到下一个bucket?
kb5ga3dv1#
如果你爬一个网站然后是的,只有一个喷口将被激活。如果您对多个站点进行爬网,它们将分布在多个bucket中,并且将有相同数量的spout示例处于活动状态。当一个shard没有更多的url可获取时,相应的spout将不会向拓扑发送url。其他spout示例将继续处理url,直到没有更多的事情要做。
1条答案
按热度按时间kb5ga3dv1#
如果你爬一个网站然后是的,只有一个喷口将被激活。如果您对多个站点进行爬网,它们将分布在多个bucket中,并且将有相同数量的spout示例处于活动状态。当一个shard没有更多的url可获取时,相应的spout将不会向拓扑发送url。其他spout示例将继续处理url,直到没有更多的事情要做。