您好,登錄后才能下訂單哦!
這篇文章主要介紹MySQL數據庫連接池SMProxy是什么,文中介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們一定要看完!
Swoole MySQL Proxy,一個基于 MySQL 協議,Swoole 開發的MySQL數據庫連接池。
原理
將數據庫連接作為對象存儲在內存中,當用戶需要訪問數據庫時,首次會建立連接,后面并非建立一個新的連接,而是從連接池中取出一個已建立的空閑連接對象。 使用完畢后,用戶也并非將連接關閉,而是將連接放回連接池中,以供下一個請求訪問使用。而連接的建立、斷開都由連接池自身來管理。
同時,還可以通過設置連接池的參數來控制連接池中的初始連接數、連接的上下限數以及每個連接的最大使用次數、最大空閑時間等等。 也可以通過其自身的管理機制來監視數據庫連接的數量、使用情況等。超出最大連接數會采用協程掛起,等到有連接關閉再恢復協程繼續操作。
特性
-支持讀寫分離
-支持數據庫連接池,能夠有效解決 PHP 帶來的數據庫連接瓶頸
-支持 SQL92 標準
-采用協程調度
-支持多個數據庫連接,多個數據庫,多個用戶,靈活搭配
-遵守 MySQL 原生協議,跨語言,跨平臺的通用中間件代理
-支持 MySQL 事務
-支持 HandshakeV10 協議版本
-完美兼容 MySQL4.1 - 8.0
-兼容各大框架,無縫提升性能
設計初衷
PHP 沒有連接池,所以高并發時數據庫會出現連接打滿的情況,Mycat 等數據庫中間件會出現部分 SQL 無法使用,例如不支持批量添加等,而且過于臃腫。 所以就自己編寫了這個僅支持連接池和讀寫分離的輕量級中間件,使用 Swoole 協程調度 HandshakeV10 協議轉發使程序更加穩定,不用像 Mycat 一樣解析所有 SQL 包體,增加復雜度。
以上是“MySQL數據庫連接池SMProxy是什么”這篇文章的所有內容,感謝各位的閱讀!希望分享的內容對大家有幫助,更多相關知識,歡迎關注億速云行業資訊頻道!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。