最近折腾面试,有十来家了吧,就问mysql如何应对高并发和高可用。
一开始还能说上来点, 最后问道主从结构,主库如何避免单点故障的时候歇菜了。主库挂了的时候要求平滑切换,前端用户感知不到。 由于我是码农不是dba 所以细节不太了解。  我就扯: 自动切换dns,双机热备的事,结果说不对。
那究竟是怎么同时跑两台或多台主库? 主库之间是怎么同步数据的? 如果多个主库,每个主库有带有从库,那么主库-主库 和 主库-从库 有什么区别?

解决方案 »

  1.   

    那究竟是怎么同时跑两台或多台主库? 
    答:M<-->M   ,两台M双向同步,如果只写一个M,就和M-S一样。主库之间是怎么同步数据的? 
    答:双向同步如果多个主库,每个主库有带有从库,那么主库-主库 和 主库-从库 有什么区别?
    答:每个M下面都可以带S。
      

  2.   

    关于架构方面 建议看下简朝阳那本mysql性能调优和架构设计
      

  3.   

    关于双master最好还是单台master写,因为网络的延迟会经常导致两边同时写入的冲突