-
目录
-
前言
上一节文章中,我们成功搭建了pxe数据库集群,在pxe集群里面任何一个数据节点都是可以读写的,一旦pxe集群上线之后我们不能把所有的数据库请求全部发送给一个数据库节点,这个pxe集群里面那么多数据的节点,都应该参与数据请求的处理,那么如何实现数据请求均匀的发送给每一个数据节点,这个技术就叫做数据库的负载均衡。
-
数据库负载均衡的必要性
如果不使用负载均衡,应用程序把所有的数据请求都发送给一个pxe节点,这个节点的负载特别的高很容易出现崩溃,而集群里面其他的集群又特别的空闲。
Haproxy不是数据库,只是一个转发器而已,应用程序把请求发送给Haproxy,由Haproxy把这些请求转发给具体的pxc数据库节点上,这样子就可以把大量的请求均匀地发送给每一个pxe节点,不会让某一个pxe处理大量的请求,而是集群里面每一个节点共同承担,共同处理数据请求,这样每一个节点的负载比较低。
有的人会想负载均衡可以用ngnix、apache lvs实现呀?为什么采用Haproxy中间件呢?Nginx支持http协议比较好吗,但是支持tcp/ip是比较晚的。lvs是不支持在虚拟机上安装的,docker容器里面安装lvs时不可能的!
-
安装Haproxy镜像
我们把数据库节点安装到docker容器里面,Haproxy这个中间件依然安装到docker容器里面 docker pull haproxy