我需要编写一个库,它执行许多远程 HTTP 调用来获取内容。我可以按照描述做here ,但是有没有更好的方法(在性能方面)如何做到这一点?如果我按照示例中所述进行操作,我总是会创建一个 URL
对象,该对象会被解析等等 - 所以我认为这是一种开销:基本 URL 始终相同,只有单个参数始终不同,例如:
http://www.example.com/?param=value1
http://www.example.com/?param=value2
http://www.example.com/?param=value3
and so on...
什么是更快/更好的方法?
最佳答案
假设每个 URL 都有可能返回不同的资源,仅此而已。我会将每个 URL 放入其自己的线程中,这样您就不会因网络问题而阻塞。
但请确保不要创建太多线程。如果您的 URL 数量超过 10 个,我会建议将 URL 放入队列中,并让每个线程在完成后处理队列中的下一个,这样您就不会因为线程而搞乱系统。
关于java - 更快/更好的方式如何进行多个远程内容获取,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7932393/