gpt4 book ai didi

Python/Twisted 多用户服务器——什么更有效率?

转载 作者:太空宇宙 更新时间:2023-11-04 01:44:30 24 4
gpt4 key购买 nike

在 Python 中,如果我想让我的服务器在 CPU 方面很好地扩展,我显然需要生成多个进程。我想知道哪个更好(使用 Twisted):

A) 管理进程(持有实际套接字连接的进程)将接收到的数据包放入共享队列(来自多处理模块的队列),工作进程将数据包从队列中拉出,处理它们并发送结果返回给客户。

B) 管理器进程(持有实际套接字连接的进程)启动延迟线程,然后调用进程池上的 apply() 函数。一旦工作进程返回结果,管理器将结果发送回客户端。

在这两种实现中,工作进程都使用线程池,因此它们可以同时处理多个数据包(因为会有大量的数据库查询)。

最佳答案

我认为B是有问题的。线程只会在一个 CPU 上运行,即使它运行一个进程,线程仍然在运行。 A 可能更好。

最好在时间方面尝试和衡量两者,看看哪个更快,哪个扩展性好。但是,我要重申,我非常怀疑 B 能否很好地扩展。

关于Python/Twisted 多用户服务器——什么更有效率?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/471660/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com