我正在使用 AWS,目前在运行 Gunicorn 的两个 EC2 机器前使用 ELB(用于负载平衡和 HTTPS 终止)。出于非常明确的原因(路由某些静态文件请求),我想在这些应用服务器前运行 Nginx。
我的问题是,理想情况下,我应该为 Nginx 单独配备一台机器吗?或者在这两个机器上都运行 Nginx,让 ELB 指向每个服务器的 Nginx 端口是否完全合理?
有哪些好处和坏处?
答案1
这取决于!
在同一台机器上运行这两者很容易设置,运行成本更低,并且可以完全满足您的需求(至少开始时)。
拥有独立应用服务器的好处是... 能够独立定制每个服务器并能够独立扩展每个服务器。如果您有大量流量或需要扩展一个服务器而不扩展另一个服务器,这可能是一个非常有用的好处(并且从长远来看可能会节省一些成本)。
一开始使用一个应用服务器很常见,等事情变得更复杂时再拆分出来也是可以的。如果你有时间和金钱,你可以选择从一开始就拆分出来,但除非你知道你需要这样做,否则我不会为此感到压力。