duc*_*cin 4 python multithreading twisted python-multithreading
当我阅读关于多线程的twisted 文档时,我的印象是,twisted 在单线程中效果最好,异步完成所有工作。但是我有一种强烈的感觉,我不了解多线程、异步性和性能(速度)之间的关系。
想象一下,我们有一台带有许多 CPU 内核的计算机。我们想在那里部署一个扭曲的服务器,它可以管理高流量。我们可以利用所有的核心,让服务器尽可能快地响应。我们应该做什么?我应该使用单线程还是多线程模式?核心数是否会影响扭曲效率(在 C 级别或 Python 级别)?
顺便提一下,我没有考虑任何缓存、与数据库相关的主题(这可以加速任何应用程序)。我只考虑与硬件相关的主题以及线程、进程等。
使用Twisted 的内置进程生成 API 生成多个进程。
如果您的服务器要在 UNIX 上运行,您可以使用reactor 套接字传输方法在服务器中的进程之间移动连接和侦听端口(尽管这些接口有朝一日也可能会移植到 Windows)。
在 Python 中生成多个线程(无论您使用的是 Twisted 还是类似的系统)都不允许您使用多个内核,因为全局解释器 lock。
| 归档时间: |
|
| 查看次数: |
3431 次 |
| 最近记录: |