已经很久没有写博了,因为最近学车加上各种问题一直没时间, 今天刚好想起有好多的东西还没来得及记录。回到正题:
Nginx是一个非常强大的web轻量级服务器,许多大厂也用Nginx进行负载均衡和反向代理,非常的方便,由于个人喜欢docker,
docker加上Nginx简直是神配,所以我们的程序高并发的时候,我们可以试着用Nginx进行反向代理和负载均衡,也就是将我们的程序
部署在多个docker之中,或者多台服务器中,使用Nginx转发我们的请求,以达到负载均衡的情况。
首先,先安装Nginx,我用的服务器是centos7,网上非常多安装教程,这里就不一一细说了。 然后安装完成之后我们需要对
nginx进行配置,我们需要进入到/etc/nginx 目录下。
然后vi nginx.conf,进入到配置文件中,如图:
进入到文件中:
这里我们需要向http节点中添加以下配置:
upstream www.abc.top { server 47.107.140.21:8080 weight=10; server 47.107.140.21:8051 weight=20; } server{ listen 8071; server_name 47.107.140.21; location / { proxy_pass http://www.abc.top; } }
这里要注意的是 listen的端口号一定不能有其他的冲突,举个例子,就有个程序的端口是8021,那这里就不能设置8021了,不然nginx会启动失败,
server_name 就是想要访问的网址或者ip。
然后upstream中可以添加多个server 当然ip和端口也不能冲突,weight是负载量,这里的8051的负载量是8080的两倍。
我这里的8080和8051是两种程序,因为这样可以很直观的看见结果。如图:
就是那么简单的配置,nginx非常强大,可以解决很多问题,最后希望对大家有所帮助。