【发布时间】:2014-06-27 10:24:46
【问题描述】:
我正在编写一个简单的守护程序来接收来自 N 多个移动设备的数据。设备将轮询服务器并将所需的数据作为简单的 JSON 发送。一般而言,服务器将接收数据,然后对其进行“处理”。
我知道这个话题已经被打败了很多次,但我很难理解利弊。
就并发性和可扩展性而言,线程或事件(想想 Python 中的 Twisted)在这种情况下会更好地工作吗?事件模型似乎更有意义,但我想对你们进行投票。数据进来 -> 处理数据 -> 等待更多数据。如果“做事”的计算量非常大怎么办?如果“做的东西”是非常 IO 密集型的(例如插入数据库)。这会阻止事件循环吗?每种方法的优缺点是什么?
【问题讨论】:
标签: python multithreading events twisted