最赞回答 / 攻城狮_卡卡罗特
首先说一下我的观点,不一定准确,可以给你参考下。一台服务器有没有用docker做数据库集群的必要我认为取决于这台服务器的性能。像老师前面做的演示,一个MySQL服务器节点,1W的并发执行1W条语句,这个时候服务响应的时候太长并且有一些连接拒绝了服务,说明这一个节点到达了瓶颈。如果这一节点到达了瓶颈,但是这台服务器的CPU、内存以及磁盘IO这些资源的使用率并不是很高,那我觉得这个时候就可以用docker来做集群。因为这台服务器的性能并没有发挥出来。如果这台服务器只实例了一个MySQL节点后各项...
2018-06-23
讲师回答 / 神思者
同学你好,因为Linux环境安装PXC集群较为复杂,所以PXC集群的搭建在《Docker环境下的前后端分离项目部署与运维》这门课程中有详细的介绍,以CentOS作为宿主机,以Docker为部署环境安装PXC集群。另外专门讲解PXC集群的运维与管理相关课程正在制作之中,上线之后,你可以关注一下。
2018-06-09
讲师回答 / 神思者
同学你好,单节点数据库并发写入要参考事务机制,建议你认真了解一下事物的ACID属性。另外你说的写入后又读取不出来的问题,是不是没提交事务导致另一方必定读不出数据呢?数据库集群解决的是单节点数据库不具备三高特点:高性能、高并发和高可用。当然数据库集群的知识量比单节点MYSQL要多一些,但同时也意味着你的技能更加值钱。
2018-05-31
已采纳回答 / 神思者
pxc集群的同步速度取决于性能最差的节点,因此说每个节点硬件配置要基本相同,否则就是浪费。另外,pxc集群不要组建太大规模的集群,节点越多同步的工作也就越多,所以速度也就越慢。最后,可以利用pxc集群和replication集群共同组成混合集群,由mycat或者其他中间件管理。重要的数据(用户信息、余额、交易、充值)保存到pxc集群,非重要的数据(新闻、回帖、公告、招聘、商品信息)保存到replication集群。至于跨集群的事物一致性可以参考微服务的解决办法,有一种方案是依靠MessageQueue来实...
2018-05-27
已采纳回答 / 神思者
同学你好,PXC集群只有在超过一半数量的节点宕机,集群才会不可用,这是为了避免异地机房部署PXC集群,因为网络故障,导致一个PXC集群分裂成两个集群。所以说挂掉一两个节点没什么问题,只要不超过一半的节点就行。
2018-05-27
已采纳回答 / 神思者
在每个节点上设置不同的主键自增规则即可。比如三节点集群,Node1的主键从1开始,递增+3;Node2的主键从2开始,递增+3;Node3的主键从3开始,递增+3
2018-05-26
讲师回答 / 神思者
您可以收看刚刚上线的《Docker环境下的前后端分离部署与运维》,其中包括了在Linux环境下搭建PXC集群的内容,https://coding.imooc.com/class/219.html
2018-05-24
讲师回答 / 神思者
这个问题要从脑裂故障说起。比如说PXC集群部署在两个机房里。如果两个机房的之间网线断了,A机房和B机房里的主机会各自组成集群,也就是说一个集群分裂成了两个集群。比如负载均衡向A机房的主机写入数据,下一次业务处理请求发送到B机房,B机房的主机内就差不到数据,这个故障很严重。为了避免脑裂分裂成多个集群,PXC会让多余一半主机的机房内的数据库节点组成一个集群,少于一半主机的机房内的数据库节点都不可用。这样脑裂出现,只会存留一个集群,而没有两个集群。所以说超过一半节点无法访问,就组不成集群。
2018-05-22