This topic describes the concepts of the OceanBase Cloud database proxy service.
Background information
The database proxy of OceanBase Cloud sits between the client and the OceanBase Cloud database, receiving client requests and forwarding them to the backend database. It ensures optimal routing to minimize distributed transactions and enhances the high availability of OceanBase Cloud databases by preventing application impact from single-server failures in multi-replica environments.
The OceanBase Cloud database proxy offers features such as connection management, optimal routing, high-performance forwarding, easy maintenance, high availability, and proprietary protocols. The following table describes some of the key concepts:
| Term | Description |
|---|---|
| Proxy endpoint | The proxy endpoint is at the core of the database proxy. It supports customizable access strategies, allowing you to modify endpoint prefixes, port numbers, etc. Connecting to RDS instances through the database proxy endpoint enables you to utilize advanced proxy features. |
| Connection management | For each client’s physical connection, the database proxy maintains its connections to multiple backend OBServer nodes. It uses a version-based incremental synchronization method to maintain session states for each OBServer node, ensuring efficient client access to all OBServer nodes. |
| Optimal routing | The database proxy considers factors such as replica locations, user-configured read/write separation routing strategies, optimal links for OceanBase’s multi-region deployments, and the status and load of each OceanBase server. This enables the proxy to route requests to the best OBServer node, ensuring the high-performance operation of OceanBase. |
| High-performance forwarding | The database proxy is fully compatible with the MySQL protocol and supports OceanBase’s proprietary protocol. It employs a multi-threaded asynchronous framework and transparent stream forwarding design to ensure high-performance data forwarding while minimizing its resource consumption. |
| Easy maintenance | The database proxy is stateless and supports unlimited horizontal scaling, allowing it to access multiple OceanBase instances simultaneously. You can monitor the status of the database proxy in real-time through the OceanBase Cloud console, making maintenance simple and convenient. |
| High availability | The high availability of the database proxy is twofold: it ensures its own high availability to continuously provide proxy services, and it is a key component of OceanBase's high availability system. It shields users from downtime, upgrades, and other disruptions, ensuring stable and fast recovery of OceanBase database services. |
| Proprietary protocol | The database proxy communicates with OBServer nodes using OceanBase’s proprietary protocol, which includes enhanced features such as CRC checks for data packet integrity and support for Oracle-compatible data types and interaction models. |
Proxy types
OceanBase Cloud provides two types of database proxy services: general and dedicated.
General: The database proxy service instance shares computing resources with other customers. The size of the database proxy instance is fixed based on the actual size of the instance. This type is suitable for businesses with relatively fixed and average traffic.
Dedicated: The database proxy service instance exclusively occupies computing resources. You can expand the database proxy resources as needed based on your business requirements. This type is suitable for businesses with high traffic. The dedicated proxy service is billed by the hour based on the resources you use.
The following table describes the features and differences of the two types:
| Feature | General | Dedicated |
|---|---|---|
| Billing type | Free for a limited period | Pay-as-you-go |
| Resource type | Shared CPU physical resources | Dedicated CPU physical resources with more stable performance. |
| Deployment architecture | High-availability cluster deployment architecture to ensure smooth failover. | High-availability cluster deployment architecture to ensure smooth failover. |
| Instance specifications | Supports 2C to 8C | Supports 2C to 64C |
| Read/write separation | Supported | Supported |
| Transaction splitting | Supported | Supported |
| Connection keep-alive | Supported | Supported |
| Seamless scaling | Supported. The proxy automatically switches to the new specification nodes during scaling. | Supported. The proxy automatically switches to the new specification nodes during scaling. |
| SSL encryption | Supported | Supported |