美西北区域代友征友# Piebridge - 鹊桥
r*n
1 楼
被问了这个crawler的问题,大概就是给你10K个机器,每个机器有seed url,然
后要爬1B的url,机器之间不能通信,问你怎么样每个机器才能平均的分任务。同时保
证每个网站只能被crawler一次。
奇怪的设计题,完全没有master,就是很多事情都不好做了
纠缠了十几分钟后突然意识到这完全是个brain teaser式的system design,然后想到
了类似UUID hashing,对拿到的url做hash,事先规定好每台机器都只做那些hash
value的job,如果hash的值跟当前机器的预定值不一样就skip,一样才继续crawl
算是蒙混过关,又问了两个follow up问题,第二个没想好时间就到了
1. 如何判断crawling结束
2. 如果一半机器比另一半快怎样分配
请问大家什么思路?
后要爬1B的url,机器之间不能通信,问你怎么样每个机器才能平均的分任务。同时保
证每个网站只能被crawler一次。
奇怪的设计题,完全没有master,就是很多事情都不好做了
纠缠了十几分钟后突然意识到这完全是个brain teaser式的system design,然后想到
了类似UUID hashing,对拿到的url做hash,事先规定好每台机器都只做那些hash
value的job,如果hash的值跟当前机器的预定值不一样就skip,一样才继续crawl
算是蒙混过关,又问了两个follow up问题,第二个没想好时间就到了
1. 如何判断crawling结束
2. 如果一半机器比另一半快怎样分配
请问大家什么思路?