kingshard 开源有一段时间了,有些热心的用户发邮件来咨询 kingshard 的设计和实现问题。于是周末抽空写了一篇介绍 kingshard 架构和功能实现的文章。由于文章有点长,感兴趣的请移步:
https://github.com/flike/kingshard/blob/master/doc/KingDoc/architecture_of_kingshard_CN.md
1
flikecn OP kingshard 是一个由 Go 开发高性能 MySQL Proxy 项目, kingshard 在满足基本的读写分离的功能上,致力于简化 MySQL 分库分表操作;能够让 DBA 通过 kingshard 轻松平滑地实现 MySQL 数据库扩容。
主要功能: 1. 读写分离。 2. 跨节点分表。 3. 客户端 IP 访问控制。 4. 平滑上线 DB 或下线 DB ,前端应用无感知。 5. 支持多个 slave , slave 之间通过权值进行负载均衡。 6. 支持强制读主库。 7. 支持将 sql 发送到特定的 node 。 8. 支持在单个 node 上执行事务,不支持跨多个 node 执行事务。 |
6
wudikua 2015-08-18 11:53:13 +08:00
开个专题给讲讲词法解析这部分吧
|
8
starlion 2015-08-18 17:06:50 +08:00
跨节点查询怎么实现的?
|
10
sujin190 2015-08-18 17:55:47 +08:00
mysql workbench 连不上去, set 指令解析有问题啊
|
12
invite 2015-08-19 08:24:41 +08:00
Proxy 本身的 HA 如何实现?备份还是双活?切换后,状态是否保存?
|
16
flikecn OP @sujin190 这个问题确认了,确实有问题。是 mysql workbench 发了一条:“ SET SESSION TRANSACTION ISOLATION LEVEL REPEATABLE READ ”。我现在在考虑要不要支持这么多客户端,因为这些客户端会发一些稀奇古怪的 SQL 语句。
|
17
invite 2015-08-19 09:45:22 +08:00
|