Docker,nginx和一台服务器上的几个站点

时间:2017-05-30 14:18:14

标签: nginx docker load-balancing reverse-proxy

我的服务器有nginx和一个正在运行的应用程序。我想向这些服务器添加几个应用程序。我想为自己吸收一些东西。

负载均衡器和反向代理有什么区别? 在哪种情况下我应该使用第一种情况,在哪种情况下我应该使用第二种情况?

如果我的网站是静态的,我应该使用什么,如果不是静态的,该怎么办?

另外,在nginx的几个站点的上下文中听到容器是一个很大的优势。

2 个答案:

答案 0 :(得分:1)

负载均衡器和反向代理之间的差异

  • 反向代理接受来自客户端的请求,将其转发给可以实现它的服务器,并将服务器的响应返回给客户端。

  • 负载均衡器在一组服务器之间分配传入的客户端请求,在每种情况下都将响应从所选服务器返回到相应的客户端。

取自nginx docs

TL; DR:

反向代理是关于:使用域名将请求路由到正确的服务器

负载均衡是关于:将负载分配到多个实例

如果我的网站是静态的,我应该使用什么,如果不是静态的,该怎么办?

您可以将HTTP反向代理+负载平衡与静态和非静态Web应用程序相结合,因此它取决于。

另外,在nginx的几个站点的上下文中听到容器是一个很大的优势

我推荐每个app / site一个nginx容器+一个动态反向代理,特别是traefik(http://traefik.io

答案 1 :(得分:0)

您需要反向代理将传入流量路由到正确的应用程序,同时考虑原始请求的内容(以及您可能定义的规则)。

确定目标应用程序后,您需要加载余额,以便分配目标应用程序。

这两项任务都可以通过经典 nginx apache haproxy 等软件完成,也可以由专为微服务世界设计的软件完成,如 fabio traefik 等。