我目前正在用java编写一个爬虫,我被一些东西困住了。
在我的爬虫中,我有线程下载静态远程页面,使用HttpURLConnection
. 我尝试下载一个具有不同参数的小文件(2kb)。连接的超时设置为 1 秒。
我注意到,如果我使用 100 个线程进行下载,我每秒发出的请求增加了 3 倍(每秒约 10k 个请求,使用 ),而当使用 500 个线程时,我成功地每秒发出“仅”4k 个请求.
我本来希望每秒至少能够处理与 100 个线程一样多的请求。
你能解释一下为什么会这样,以及是否有一些参数可以在某处激活以增加最大并行连接数?
谢谢 :)