我很困惑为 Web 应用程序使用多个进程是否会提高性能。Apache 的 mod_wsgi 提供了一个选项来设置要为守护进程组启动的进程数。我之前将 fastcgi 与 lighttpd 一起使用,它还可以选择为每个 fastcgi 应用程序配置最大进程数。
虽然我不知道多处理如何更好,但与单进程多线程模型相比,我确实知道它有一些不好的地方。例如,在多处理场景(链接)中,日志记录将更难实现,尤其是当您还希望日志轮换时。而且由于内存不能共享,如果你在内存中缓存一些东西(最直接的方式),你就会有多个重复的副本。
多个进程是更好地利用多核计算能力,还是产生更高的吞吐量?还是它们只是用于一些单线程应用程序?