TaurusDB for PostgreSQL数据库代理简介
数据库代理是TaurusDB for PostgreSQL和应用服务之间的网络代理服务,用于代理应用服务访问TaurusDB for PostgreSQL的所有请求。
读写分离是指通过数据库代理地址实现读写请求的自动转发。创建TaurusDB for PostgreSQL实例后,您可以开通数据库代理,通过代理地址,写请求自动访问主节点,读请求按照数据库代理的路由模式分发到各个节点,进行读写分离,降低主节点的负载。
数据库代理服务暂不收费。
基本概念
读写分离原理
TaurusDB for PostgreSQL支持开通一个或多个数据库代理。
一个TaurusDB for PostgreSQL实例下只有1个数据库代理实例,应用服务通过数据库代理地址连接到数据库代理实例,写请求通过数据库代理实例自动转发到主节点,读请求根据数据库代理实例的路由模式转发至主节点或只读节点。

一个TaurusDB for PostgreSQL实例下可以创建多个数据库代理实例,最多支持创建4个代理实例,主要适用于有隔离需求的复杂业务。不同的应用服务可以根据业务需要连接不同的数据库代理,数据库代理连接指定的只读节点,将不同应用服务之间的读请求最终转发到不同的只读节点上,实现业务隔离。
读写分离优势
- 相比在应用程序内手动做读写分离,扩容灵活,维护成本低。
- 客户端读请求分发至后端只读节点,数据库实例整体负载更加均衡,提升资源利用率。
- 通过代理将指定业务的读请求路由到选定的只读实例上,实现业务隔离,避免多个业务之间相互影响。
请求路由规则
注意事项
| 分类 | 注意事项 |
|---|---|
| 不支持的功能 | 数据库代理不支持通过修改数据库的pg_hba文件限制访问权限,且pg_hba文件中不能限制proxy的IP,否则代理无法建立与数据库的连接。 |
| 使用约束 |
|