SMProxy v1.3.1
1.3.1
SMProxy(Swoole MySQL Proxy)一個基於MySQL 協議,Swoole 開發的MySQL資料庫連線池。
原理
將資料庫連接作為物件儲存在記憶體中,當使用者需要存取資料庫時,首次會建立連接,後面並非建立一個新的連接,而是從連接池中取出一個已建立的空閒連接物件。 使用完畢後,使用者並非將連線關閉,而是將連線放回連線池中,以供下一個請求存取使用。而連結的建立、斷開都由連接池本身來管理。
同時,也可以透過設定連線池的參數來控制連線池中的初始連線數、連線的上下限數以及每個連線的最大使用次數、最大空閒時間等等。 也可以透過其自身的管理機制來監視資料庫連線的數量、使用情況等。超出最大連線數會採用協程掛起,等到有連線關閉再恢復協程繼續操作。
特性
支援讀寫分離
支援資料庫連線池,能夠有效解決PHP 帶來的資料庫連線瓶頸
支援SQL92 標準
採用協程調度
支援多個資料庫連接,多個資料庫,多個用戶,靈活搭配
遵守MySQL 原生協議,跨語言,跨平台的通用中間件代理
支援MySQL 事務
支持HandshakeV10 協議
完美相容MySQL5.5 - 8.0
相容各大框架,無縫提升性能