上一文中,我们讲到 如何分布式部署SimplerWorker , 当分布式部署多台机器时,有多个gateway服务器,每个gateway服务器都是一个网络io入口,那么客户端应该链接哪个gateway服务器呢,用户应该访问哪个gateway服务器地址呢?
这里我们需要使用反向代理,让客户端有一个唯一入口,这个唯一入口根据多台gateway服务器的压力,自动链接一台gateway服务器。这样,我们就不用关心服务器有多少台gateway服务器,只知道有一个入口即可。
第一章节中, 我们使用NGINX作为服务器,这里我们需要配置NGINX反向代理来指定这个唯一入口。
上一章中,我们分布式部署了四台机器,IP地址分别是 192.168.218.128、192.168.218.129、192.168.218.130、192.168.218.131,我们希望用户只访问192.168.218.128,系统就自动根据服务器压力自动选择访问这四台机器的其中一台,即192.168.218.128作为唯一入口,我们root登录192.168.218.128并编辑nginx.conf文件:
编辑nginx.conf文件
# vim /usr/local/nginx/conf/nginx.conf
填写四台机器IP地址如下:
引用反向代理:
通过以上设置,就完成了反向代理设置,唯一入口是192.168.218.128,那么小伙伴们就有疑问了,用户访问192.168.218.128没毛病,但是系统访问四台不一样的服务器,数据库怎么统一,插入和查询的数据会不会是四个不同的数据库?如果是同一个数据库,一个数据库承载四台服务器连接,会不会罢工,分布式反而无意义。
同样考虑到如上问题,下一文章中,我们将一起讲解数据库集群,解决这个疑问。