基于nginx的TCP Proxy实现数据库读写分离
2017-06-24 19:21
204 查看
nginx非常早就支持tcp proxy。可是一直不知道其使用,近期在nginx blog上看见了。一些实践者将其运用到数据库訪问的负载均衡以及实现读写分离,来提高数据库的吞吐量,这里我不会讲详细的搭建实现。仅仅是最一些理论上的设计猜想。
直接上图
![](http://img.blog.csdn.net/20160226150438244)
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的连接限制。
数据同步不及时。导致数据一致,比方我一写就读,还没同步。
直接上图
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实现数据库读写分离
- nginx+pam+mysql实现基于数据库的用户认证
- 基于 Nginx 的软件负载均衡实现解读 [转自 数据库开发]
- nginx+pam+mysql实现基于数据库的用户认证
- 基于客户端(非proxy)实现数据库读写分离
- 基于Spring的实现数据库读写分离
- 读写分离实现自动切换数据库(基于mybatis拦截器)
- 基于ODBC API实现对数据库的访问
- 如何设计数据库表实现完整的RBAC(基于角色权限控制)
- 目前大多数数据库应用程序都是基于Sql2000的,所以我们着重讲述在2000怎样实现缓存
- 基于数据库(access)层次编码记录对TreeView的操作(实现自动编码,灵活控制编码规则和编码层次)
- 基于微软解决方案的负载测试实现-知识库1____(转)理解.NET中的数据库连接池
- 实现基于WebService上的CrystalReport与数据库连接
- 基于关系数据库系统链式存储的树型结构数据,求某结点下的子树所有结点算法(t-sql语言实现)
- 基于MySQL的数据库集群系统的实现(摘)
- 基于JSP实现图片的数据库存储与显示
- 基于MySQL的数据库集群系统的实现
- 如何设计数据库表实现完整的RBAC(基于角色权限控制)
- [转] 基于MySQL的数据库集群系统的实现
- 如何设计数据库表实现完整的RBAC(基于角色权限控制)