如何运行多个 NGINX 实例以便服务器可以一起开发但单独部署

如何运行多个 NGINX 实例以便服务器可以一起开发但单独部署

我是一名 NGINX 初学者,正在构建自适应实时视频服务器(HLS 和 DASH)和缓存 HTTPS 反向代理服务器。

虽然服务器将部署到不同的机器上,但我希望在同一机器上开发两者,这样我就可以在同一环境中调整它们,这样我就可以更轻松地观察它们之间的流量和资源权衡。此过程还将有助于确定和平衡每个部署机器所需的硬件资源。

最好的方法是什么?(就我而言,是在 Ubuntu 18.04 下。)我应该创建单独的服务,还是只将一个服务作为服务运行,将另一个作为常规进程运行?我应该预见到什么问题吗?

答案1

Nginx 包含多个工作进程和一个主进程照顾他们所有人。它的配置由多个虚拟主机配置每个server {}子句下都有,可能有不同的选项。它们通常运行在相同的网络套接字上。这一切是高度可配置的,并且非常易于管理。另一方面,多实例 nginx 安装繁琐且不明确,即使仍然可能。

考虑到以上所有因素,我认为没有必要在一台服务器上运行多个 nginx 实例,因为无论如何您都会有多个工作程序(如果您将其数量设置为大于 1)。当您将它们分派到不同的机器上时,您只需拆分它们的虚拟主机配置并使用“最适合”方法调整主配置。

相关内容