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生成系统