当前位置: 代码迷 >> Java Web开发 >> java 下载(大量)图片慢解决思路
  详细解决方案

java 下载(大量)图片慢解决思路

热度:73   发布时间:2016-04-14 09:05:34.0
java 下载(大量)图片慢
现有需求,从数据库取id, 用id 取网上爬 图片,并下载到本地, 之后在修改数据库的一个字段。

现代码1天只能下载不到1W张

请问,怎么做才能快一点,有没有什么好办法?
------解决思路----------------------
如果确实是因为网络速度太慢,那就没办法了,如果不是,可以采用多线程的方式进行下载,但是多线程的个数要根据你服务器的cpu的性能来定,如果是建议CPU的核数乘以2
------解决思路----------------------
开源中国中有个开源项目,关于网页爬虫的,使用的就是多线程做的,效率蛮高的,有兴趣可以下载看一下,希望能帮到你。。。
------解决思路----------------------
引用:
Quote: 引用:

如果确实是因为网络速度太慢,那就没办法了,如果不是,可以采用多线程的方式进行下载,但是多线程的个数要根据你服务器的cpu的性能来定,如果是建议CPU的核数乘以2




嗯,除了多线程还有没有别的方法了,用了多线程了,感觉还是有点慢。

增加线程数,直到性能不再提升为止。
------解决思路----------------------
引用:
Quote: 引用:

Quote: 引用:

如果确实是因为网络速度太慢,那就没办法了,如果不是,可以采用多线程的方式进行下载,但是多线程的个数要根据你服务器的cpu的性能来定,如果是建议CPU的核数乘以2




嗯,除了多线程还有没有别的方法了,用了多线程了,感觉还是有点慢。

增加线程数,直到性能不再提升为止。
线程不是越多越好的,太多了你的CPU无法转换时间切片去处理的话一样是没用的,建议楼主使用线程池,根据C PU的性能创建一定量的核心线程,然后将你所说的9万张图片进行分组,比如启动了8个线程,可以分成8个组,每个线程执行一组