如果我有一个包含10个进程和10个线程的Web服务器,那意味着什么?

时间:2011-04-26 05:37:01

标签: python ajax multithreading process

http://pypi.python.org/pypi/Spawning/

所以我正在玩Spawning ...... 如果我使用10个进程和10个线程运行它,那意味着什么?

我正在建立一个聊天室(使用eventlet进行长轮询)。这是否意味着聊天室中只能有10个人?

2 个答案:

答案 0 :(得分:0)

没有。这完全取决于您的应用程序的体系结构。基于事件的应用程序可以在单个线程中支持大量连接(用户,会话,应用程序中的任何事项)

在执行阻塞IO操作时通常需要多个线程,在需要真正的计算负载分配时需要多个进程。在简单的聊天应用程序中,您可以轻松避免对两者的需求。标准Python库包含asyncoreasynchat模块,您可能会对它们感兴趣。 Twisted库是一种更全面的方法。

答案 1 :(得分:0)

没有。拥有一定数量的线程/进程不会对内容或客户端创建或更改任何类型的限制。拥有更多线程/进程可以在应用程序平衡时提高应用程序的性能,尤其是在单线程或单进程架构仅限于一个CPU的SMP系统上。