首页 > io密集型的业务,cpu的核数重要吗

io密集型的业务,cpu的核数重要吗

其实就是买了个vps,主要是做爬虫和放一些静态的网页。cpu利用率一直很低。cpu核数降级有没有关系?


有种你的瓶颈在 网络的感觉。


从爬虫应用的角度来说,对方服务器的响应速度及对应的反爬机制是你需要考虑的问题,对方把你拒绝了,你有再多的机器CPU有什么用


影响很小,你的业务没有重计算的任务,而且阻塞都发生在了IO上,所有降低CPU不会有什么影响的。


当你的应用的性能瓶颈在于I/O而不在于CPU,你需要考虑的是提高硬盘读写的表现,CPU降级影响不大。

现在很多爬虫都是Event Based的。在Node.js和Vert.x等等Event based的软件/框架的应用场景中,CPU的利用率经常也是不高的。

题主可能想探讨的是CPU在I/O中,具体会有多大的影响。我们知道DMA技术,即直接内存访问(Directional Memory Access),这是不需要CPU的干预的。在有DMA的应用场景中,CPU几乎对I/O效率没有影响。常用的SATA硬盘处在PIO mode时,会占用大量CPU资源,不过这也是可以调整成DMA的。DMA往往是在特定的情形中使用,比如DSP中,GPU等等。在题主的应用场景中,显然不是如此。但是I/O所占用的CPU的Overhead,始终无法与CPU密集型的应用相比。假如你的I/O使得CPU利用率达到极高,硬盘相对于CPU则必定高级了很多。

【热门文章】
【热门文章】