本文由LinuxProbe.Com团队成员魏丽猿整理发布,点此报名Linux培训

Kingshard是一个由Go语言开发的高性能MySQL Proxy项目,kingshard在满足基本的读写分离的功能上,致力于简化MySQL分库分表操作,能够让DBA通过kingshard轻松平滑地实现MySQL数据库扩容,kingshard的性能大约是直连MySQL性能的80%以上,而且自从kingshard开源以来,经过不断地迭代开发,目前功能较为完善,稳定性也有了很大的提升。Kingshard的架构如下
kingshard
主要功能:

  1. 读写分离
  2. 跨节点分表
  3. 支持透明的MySQL连接池,不必每次新建连接
  4. 支持客户端IP访问控制
  5. 平滑上线DB或下线DB,前端应用无感知
  6. 支持多个slave,slave之间通过权值进行负载均衡
  7. 支持强制读主库
  8. 支持将sql发送到特定的node
  9. 支持在单个node上执行事务,不支持跨多个node执行事务
  10. 支持跨node的count,sum,max和min等函数
  11. 支持单个分表的join操作,即支持分表和另一张不分表的join操作
  12. 支持order by,limit等操作
  13. 支持主流语言(java,php,python,C/C++,Go)SDK的mysql的prepare特性
  14. 支持到后端DB的最大连接数限制
  15. 支持SQL日志及慢日志输出

本文地址:http://www.linuxprobe.com/open-source-database-middleware-kingshard.html编辑:魏丽猿,审核员:陶武杰