尽管Python和 Ruby每个解释器线程有一个内核线程,它们有一个全局解释器锁(GIL),用于保护潜在的共享数据结构,因此这会抑制多处理器执行。尽管那些用 C 或 C++ 编写的语言中的部分可以是自由线程的,但除非使用多个进程,否则纯解释代码是不可能的。实现这一目标的最佳方法是什么? Using FastCGI ?创建 cluster or a farm虚拟化服务器?使用它们的 Java 等效项 JRuby 和 Jython?
最佳答案
我不完全确定你想要解决哪个问题,但是如果你使用 mod_python 通过 apache prefork MPM 部署你的 python/django 应用程序,apache 将启动几个工作进程来处理不同的请求。
如果一个请求需要如此多的资源,以至于您想使用多个内核,请查看 pyprocessing .但我认为这不明智。
关于python - 如何使 Ruby 或 Python 网站使用多核?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37142/