SMProxy 1.2.9 發布,新增狀態命令監控面板功能

←手機掃碼閱讀     admin @ 2019-07-26 , reply:0

Swoole MySQL Proxy

一個基於 MySQL 協議,Swoole 開發的 MySQL 資料庫連接池。

原理

將資料庫連接作為對象存儲在內存中,當用戶需要訪問資料庫時,首次會建立連接,後面並非建立一個新的連接,而是從連接池中取出一個已建立的空閑連接對象。
使用完畢后,用戶也並非將連接關閉,而是將連接放回連接池中,以供下一個請求訪問使用。而連接的建立、斷開都由連接池自身來管理。

同時,還可以通過設置連接池的參數來控制連接池中的初始連接數、連接的上下限數以及每個連接的最大使用次數、最大空閑時間等等。
也可以通過其自身的管理機制來監視資料庫連接的數量、使用情況等。超出最大連接數會採用協程掛起,等到有連接關閉再恢復協程繼續操作。

特性

  • 支持讀寫分離

  • 支持資料庫連接池,能夠有效解決 PHP 帶來的資料庫連接瓶頸

  • 支持 SQL92 標準

  • 採用協程調度

  • 支持多個資料庫連接,多個資料庫,多個用戶,靈活搭配

  • 遵守 MySQL 原生協議,跨語言,跨平台的通用中間件代理

  • 支持 MySQL 事務

  • 支持 HandshakeV10 協議版本

  • 完美兼容 MySQL5.5 - 8.0

  • 兼容各大框架,無縫提升性能

設計初衷

PHP 沒有連接池,所以高併發時資料庫會出現連接打滿的情況,Mycat 等資料庫中間件會出現部分 SQL 無法使用,例如不支持批量添加等,而且過於臃腫。
所以就自己編寫了這個僅支持連接池和讀寫分離的輕量級中間件,使用 Swoole 協程調度 HandshakeV10 協議轉發使程序更加穩定,不用像 Mycat 一樣解析所有 SQL 包體,增加複雜度。

版本更新

  • 新增status命令監控面板功能

  • 修復日誌目錄創建失敗的問題

  • 修復PHP字元串索引取值版本兼容問題

開發與討論





[admin ]

來源:OsChina
連結:https://www.oschina.net/news/108548/smproxy-1-2-9-released
SMProxy 1.2.9 發布,新增狀態命令監控面板功能已經有30次圍觀

http://coctec.com/news/all/show-post-210876.html