摘要:
目前较为常见的mysql读写分离分为两种:1、 基于程序代码内部实现:在代码中对select操作分发到从库;其它操作由主库执行;这类方法也是目前生产环境应用最广泛,知名的如DISCUZ X2。优点是性能较好,因为在程序代码中实现,不需要增加额外的设备作为硬件开支。缺点是需要开发人员来实现,运维人员无从下手。2、 基于中间代理层实现:我们都知道代理一般是位于客户端和服务器之间,代理服务器接到客户端请求后通过判断然后转发到后端数据库。在这有两个代表性程序mysql-proxy:mysql-proxy为mysql开源项目,通过其自带的lua脚本进行sql判断,虽然是mysql官方产品,但是mysql 阅读全文
摘要:
上一篇中提到安裝LUA及MySQL Proxy後,接下來就是RW splitting(讀寫分流)的部份了整體的概念圖跟上一篇MySQL Proxy安裝方式相同,丫忠再補上一個對應port的圖表:針對上圖的架構,首先需要了解幾點基本的觀念:所有寫入(ADD、UPDATE、DELETE)的動作都是針對MySQL Master所有讀取(SELECT)的動作都是大部分都是在MySQL Slave(部份在MySQL Master,因為涉及到是否同步完成的關係,請見下面MySQL Proxy如何解決同步延遲問題的說明)MySQL Master與MySQL Slave已經建立起 同步(Replication 阅读全文