Mysql Proxy
HA:High Available
Mysql proxy
Mysql proxy
的意义在于:
- 单机数据库不满足需求,需要多实例、多机部署
- 基于
mysql server
与client
的中间层,对前端透明,对DB
则是一个客户端 - 读写分离
- 分表路由
- 连接池
sql 黑名单
:如 不带where
条件的update
、insert
等语句。web 化
的管理界面
下面是一些开源的技术方案。
-
mysql-proxy:
Mysql
官方的方案 -
druid:阿里巴巴开源的数据库连接池
-
Atlas:奇虎360开源的
Mysql proxy
,基于 [mysql-proxy] -
Mycat-Server:国内开源社区的集成方案,基于原阿里中间件
Cobar
进行的二次开发。
uuid
关于 全局id
的生成,也即有很多方案,目的是为了构造一个全局的、趋势递增、独一无二的 整型id
。
大体思想是以 命名空间
形式构造:
|
|
因为是基于 时间
,所以会存在 时钟回拨
的问题。
-
snowflake :
twittter
开源的uuid
生成算法。 -
uid-generator:百度开源的
uuid
生成方案,基于snowflake
。 -
Leaf:美团开源的方案,具体可参见其技术文章:Leaf——美团点评分布式ID生成系统