为了在 Gunicorn 前正确运行 Nginx,在同一台机器上运行它们是一个坏主意吗?

为了在 Gunicorn 前正确运行 Nginx,在同一台机器上运行它们是一个坏主意吗?

我正在使用 AWS,目前在运行 Gunicorn 的两个 EC2 机器前使用 ELB(用于负载平衡和 HTTPS 终止)。出于非常明确的原因(路由某些静态文件请求),我想在这些应用服务器前运行 Nginx。

我的问题是,理想情况下,我应该为 Nginx 单独配备一台机器吗?或者在这两个机器上都运行 Nginx,让 ELB 指向每个服务器的 Nginx 端口是否完全合理?

有哪些好处和坏处?

答案1

这取决于!

在同一台机器上运行这两者很容易设置,运行成本更低,并且可以完全满足您的需求(至少开始时)。

拥有独立应用服务器的好处是... 能够独立定制每个服务器并能够独立扩展每个服务器。如果您有大量流量或需要扩展一个服务器而不扩展另一个服务器,这可能是一个非常有用的好处(并且从长远来看可能会节省一些成本)。

一开始使用一个应用服务器很常见,等事情变得更复杂时再拆分出来也是可以的。如果你有时间和金钱,你可以选择从一开始就拆分出来,但除非你知道你需要这样做,否则我不会为此感到压力。

相关内容