찾다

 >  Q&A  >  본문

网页爬虫 - python爬虫速率的疑问,小白求解

优化网络:

1.我理解 爬虫主要的问题在于网络阻塞,所以使用多线程弥补HTTP异步等待。
那么使用了gevent解决网络问阻塞题,就不需要使用多线程吗?

优化CPU:

2.python多线程运行时,使用的是单核心,还是多核心?在多核心机器上运行如果是单核心,能否同时使用多线程多进程

3.在4核心8线程的电脑上,开启单个进程32线程python运行,这些线程是怎么分配的?

4.当网络阻塞不是瓶颈,如何才能最大化使用单台电脑CPU?应该使用多线程还是多进程增大爬取速率?

5.使用消息队列分布式爬虫,等待的消息过多会不会存在内存或CPU问题?

6.使用消息队列是如何增大爬取速率的?

高洛峰高洛峰2848일 전685

모든 응답(1)나는 대답할 것이다

  • 高洛峰

    高洛峰2017-04-18 09:52:25

    CPU를 최대한 활용하려면 멀티 프로세스를 사용하세요
    스레드의 경우 코루틴 작업을 할 때 거의 사용하지 않는데요
    즉, 멀티 프로세스 + 코루틴 방식이었던 것으로 기억합니다. 매우 빠릅니다. 그런 다음 pypy 또는 기타 고성능 Python
    다중 프로세스, 다중 스레드 및 코루틴을 모두 함께 사용할 수 있습니다.

    회신하다
    0
  • 취소회신하다