我是 Python 世界的新手,在某个地方我读到使用 uWSGI 在 Nginx 后面会更好,因为这样可以让 Nginx 简单地提供内容,并且可以让您选择运行多少个轻量级 nginx 线程,独立于您选择启动多少个重量级 Python 线程来提供动态内容。 然后,我在谷歌上搜索了什么是 Nginx,我得到了以下结果: 从上面的图片中,我理解 Nginx 是一个 Web 服务器。 然后我搜索了 uWSGI 并打开了第一个结果,如下所示: 如上图所示,uWSGI 能够提供 Web 应用程序。 因此,我认为如果 uWSGI 和 Nginx 都是 Web 服务器,那么为什么要一起使用它们。 对我来说这没有意义。 有人能给我解释一下吗?
您可以使用http选项仅运行uwsgi服务器,而无需运行nginx服务器即可为应用程序提供服务。是否有意义取决于您的服务需求。一般来说:如果您有大量静态内容(网页、css/js文件、图像等),则运行nginx以在代理其他请求到uwscgi时提供这些内容可能是最有效的方法。如果您仅提供动态内容(即必须通过Python处理的内容),那么仅使用uwsgi服务器即可。如果您知道负载情况,则确定适当的设置最佳方法是创建并运行模拟(即使用wrk或ab并让它们点击各种静态/非静态页面)。使用上述两种配置之一运行模拟,并查看哪个为您提供最佳性能范围的性能包络。