PolarProxy is a proxy that is developed for PolarDB for PostgreSQL(Compatible with Oracle). This topic describes the features of PolarProxy.

PolarProxy is deployed between your database system of PolarDB for PostgreSQL(Compatible with Oracle) and your applications. PolarProxy receives requests from your applications and then routes the requests to the primary and read-only instances of your database system. PolarProxy is easy to use and maintain, and provides high availability and high performance. In addition, PolarProxy provides advanced features such as automatic read/write splitting and transaction splitting.

PolarDB architecture and PolarProxy

1

PolarDB Standard Edition has the following characteristics:

  • A PolarDB cluster consists of one primary node and one or more read-only nodes.
  • By default, PolarDB provides two types of endpoints: primary endpoints and cluster endpoints.
    Note The requests from the applications that are connected to cluster endpoints must pass through PolarProxy. Cluster endpoints are classified into read-only cluster endpoints and read/write cluster endpoints. Read-only cluster endpoints allow PolarDB clusters to distribute read requests to read-only nodes based on the number of connections. For information about read/write cluster endpoints, see Read/write splitting.

Read/write splitting

Read/writing splitting is automatically performed in the PolarDB clusters of the Cluster Edition. After an application is connected to a cluster endpoint of a PolarDB cluster, the write requests from the application are forwarded to the primary node of the cluster and read requests are forwarded to the primary and read-only nodes based on the load of each node. The number of pending requests on a node indicates the load of the node. For more information, see Read/write splitting.

Transaction splitting

PolarDB supports transaction splitting. Transaction splitting ensures that data is consistent in a session and allows PolarDB to send read requests to read-only nodes to reduce the load of the primary node. For more information, see Transaction splitting.

Related API operations

OperationDescription
CreateDBEndpointAddressCreates a public endpoint for a specified PolarDB cluster.
CreateDBClusterEndpointCreates a custom cluster endpoint for a specified PolarDB cluster.
DescribeDBClusterEndpointsQueries the information about the endpoints of a specified PolarDB cluster.
ModifyDBClusterEndpointModifies the configuration of a cluster endpoint for a specified PolarDB cluster.
ModifyDBEndpointAddressModifies the endpoints such as custom cluster endpoints of a specified PolarDB cluster.
DeleteDBEndpointAddressDeletes a cluster endpoint of a specified PolarDB cluster. This operation cannot be used to delete private custom cluster endpoints.
DeleteDBClusterEndpointDeletes a custom cluster endpoint of a specified PolarDB cluster.