首页 > 代码库 > 基于nginx的TCP Proxy实现数据库读写分离
基于nginx的TCP Proxy实现数据库读写分离
nginx非常早就支持tcp proxy。可是一直不知道其使用,近期在nginx blog上看见了。一些实践者将其运用到数据库訪问的负载均衡以及实现读写分离,来提高数据库的吞吐量,这里我不会讲详细的搭建实现。仅仅是最一些理论上的设计猜想。
直接上图
db集群。分为读db和写db。写db向读db同步数据。
读db仅仅能读,写db仅仅能写。图中读写各一个,仅仅是一个样例,实际须要依据业务来配置读写server比例。
nginx tcp proxy实现读写分离。提供仅仅读的port和仅仅写的port。
db connection pool维护两个数据库连接池,一个读一个写,可是对于使用db connection pool的service来说。他们能够直接读写。
db connection pool须要实现读写操作分离。
这个系统的一些瓶颈:
db connection pool须要维护的tcp 连接过多。
db connection pool与nginx tcp proxy的连接限制。
数据同步不及时。导致数据一致,比方我一写就读,还没同步。
基于nginx的TCP Proxy实现数据库读写分离
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。