Vitess:高性能MySQL前端
Vtocc是vitess項目中第一個可用的產品,它的作用是作為MySQL的 前端,為接收和發送SQL命令提供一個RPC接口。它能夠在少量且吞吐量合理(~10kqps)的數據庫連接上高效復用大量的傳入連接(10K+)。另 外,它還內置了SQL語法分析器,使得服務器有能力理解并優化處理接收到的查詢語句。
Vtocc已經在許多大型生產環境中有所應用,例如,油Tube全新的MySQL服務架構以其為核心。
特性概覽
- Python DBAPI 2.0兼容的客戶端接口(vt_occ2.py)
- Go語言數據庫/SQL兼容的客戶端接口
- 支持基于HTTP或TCP套接字的多種協議
- 支持綁定變量查詢,支持查詢緩存:可避免重復分析,高效復用查詢計劃
- 支持連接池
- 事務處理管理:可以限制事務處理的并發連接數
- DML注釋:每個DML語句都包含一個注釋區域,以標識它所改動行的主鍵
- 內置可靠性解決方案
- 強化查詢:可以為子查詢重用正在執行的查詢
- 限制查詢返回的行數量的最大值
- 可終止運行時間過長無響應的事務
- 可終止運行時間過長無法返回結果的查詢
- 可自動終止后臺空閑連接,以避免出現脫機數據庫錯誤
Vtocc未來可能會具備的新特性:
- 支持行緩存的一致性,重寫查詢,以最大化行緩存的利用率
- 內置binlog解釋器,支持由vtocc注入的提供行變更更新流的DML文檔分析
- 支持DDL
- 支持持久性連接 (張志平/編譯)
本文由用戶 jopen 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!