扭曲是构建多线程服务器的好选择吗?

Bla*_*man 6 python multithreading twisted

我需要从数百个pop3电子邮件帐户中提取,我想构建一个强大的服务器来执行此操作.

扭曲是这类项目的好选择吗?

现在一个简单的原型将是从一个pop3帐户拉出来,然后它将从许多人拉出来,但它将是一个序列化的过程.

我想创建一个具有多个线程的服务器,以便它可以同时执行任务.

pyf*_*unc 7

Twisted是一个用Python编写的事件驱动的网络框架.它在很大程度上建立在异步和非阻塞功能之上,最好用于开发利用这些功能的网络应用程序.它具有线程支持,用于无法提供异步非阻塞I/O的用例.这是基于以下事实:大部分时间都花在网络I/O操作中.

利用此功能的两个模型是线程模型,您可以在其中创建多个线程,每个线程完成一个任务或使用非阻塞I/O通过交错多个任务在单个进程中完成多个任务的单个进程.Twisted非常适合第二个模型.

非阻塞模型

+--------------------------+
|task1 | wait period | comp|
+--------------------------+
       +--------------------------+
       |task2 | wait period | comp|
       +--------------------------+
Run Code Online (Sandbox Code Playgroud)

您可以使用Twisted开发一个非常强大的服务器,它具有POP3/IMAP支持.

有一个如何用twisted构建pop3客户端的例子.