PolarProxy is a proxy that is developed for PolarDB for Oracle. This topic describes the features of PolarProxy.
PolarProxy is deployed between your database system of PolarDB for 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
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
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/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.
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
|CreateDBEndpointAddress||Creates a public endpoint for a specified PolarDB cluster.|
|CreateDBClusterEndpoint||Creates a custom cluster endpoint for a specified PolarDB cluster.|
|DescribeDBClusterEndpoints||Queries the information about the endpoints of a specified PolarDB cluster.|
|ModifyDBClusterEndpoint||Modifies the configuration of a cluster endpoint for a specified PolarDB cluster.|
|ModifyDBEndpointAddress||Modifies the endpoints such as custom cluster endpoints of a specified PolarDB cluster.|
|DeleteDBEndpointAddress||Deletes a cluster endpoint of a specified PolarDB cluster. This operation cannot be used to delete private custom cluster endpoints.|
|DeleteDBClusterEndpoint||Deletes a custom cluster endpoint of a specified PolarDB cluster.|