问题:
? 一个全局主服务器,挂掉的话所有用户注册及写操作就挂掉。
? 每个数据库组一个主服务器,挂掉的话这组用户的写操作就挂掉。
? 数据库组从服务器挂掉的话会导致其它服务器负载过大。
对于Master-Slave模式的单点问题,LJ采取了Master-Master模式来解决。所谓Master-Master实际上是人工实现的,并不是由MySQL直接提供的,实际上也就是两台机器同时是Master,也同时是Slave,互相同步。
Master-Master实现时需要注意:
? 一个Master出错后恢复同步,最好由服务器自动完成。
? 数字分配,由于同时在两台机器上写,有些ID可能会冲突。
解决方案:
? 奇偶数分配ID,一台机器上写奇数,一台机器上写偶数
? 通过全局服务器进行分配(LJ采用的做法)。
Master-Master模式还有一种用法,这种方法与前一种相比,仍然保持两台机器的同步,但只有一台机器提供服务(读和写),在每天晚上的时候进行轮换,或者出现问题的时候进行切换。
8、现在我们在哪里
- 首页
- 微信小程序开发的报价
- 正文