朋友们,我用Java实现了一个多线程的网络爬虫。为了使它更高效,我想将其转换为分布式架构,即在3台机器上。据我所知,主从架构是最好的。谁能提供一些见解,说明哪种体系结构是最好的,以及我如何用Java实现它?
发布于 2013-02-26 14:14:49
您可以计算每个正在爬行的域的哈希码,并使用此哈希来确定哪个节点应该爬行该域。这样,所有节点都可以并行工作,而不需要太多交互。
您还需要一些代码来在爬网完成后或定期合并爬网结果。可能更好的做法是从节点复制一些生成的归档文件,然后在中央位置进行处理。
虚拟机云看起来是一个很好的部署平台,因为爬行并不是CPU或内存密集型的。
https://stackoverflow.com/questions/15082500
复制相似问题