This topic describes the specifications of DRAM-based read/write splitting instances of ApsaraDB for Redis Enhanced Edition (Tair). These specifications include the number of read replicas, memory capacity, maximum number of connections, maximum bandwidth, and queries per second (QPS) reference value.
Instance specifications
Specification | InstanceClass value (used in API operations) | CPU cores | I/O threads | Read replicas | Bandwidth (Mbit/s) | Maximum new connections per second | Proxy mode: Maximum connections | QPS reference value |
1 GB read/write splitting instance (1 shard, 1 read replica) | redis.amber.logic.splitrw.small.1db.1rodb.6proxy.multithread | 12 | 4 | 1 | 192 | 20,000 | 60,000 | 480,000 |
2 GB read/write splitting instance (1 shard, 1 read replica) | redis.amber.logic.splitrw.mid.1db.1rodb.6proxy.multithread | 12 | 4 | 1 | 192 | 20,000 | 60,000 | 480,000 |
4 GB read/write splitting instance (1 shard, 1 read replica) | redis.amber.logic.splitrw.stand.1db.1rodb.6proxy.multithread | 12 | 4 | 1 | 192 | 20,000 | 60,000 | 480,000 |
8 GB read/write splitting instance (1 shard, 1 read replica) | redis.amber.logic.splitrw.large.1db.1rodb.6proxy.multithread | 12 | 4 | 1 | 192 | 20,000 | 60,000 | 480,000 |
16 GB read/write splitting instance (1 shard, 1 read replica) | redis.amber.logic.splitrw.2xlarge.1db.1rodb.6proxy.multithread | 12 | 4 | 1 | 192 | 20,000 | 60,000 | 480,000 |
32 GB read/write splitting instance (1 shard, 1 read replica) | redis.amber.logic.splitrw.4xlarge.1db.1rodb.6proxy.multithread | 12 | 4 | 1 | 192 | 20,000 | 60,000 | 480,000 |
64 GB read/write splitting instance (1 node, 1 read replica) | redis.amber.logic.splitrw.8xlarge.1db.1rodb.6proxy.multithread | 12 | 4 | 1 | 192 | 20,000 | 60,000 | 480,000 |
1 GB read/write splitting instance (1 node, 3 read replicas) | redis.amber.logic.splitrw.small.1db.3rodb.12proxy.multithread | 24 | 4 | 3 | 384 | 40,000 | 120,000 | 960,000 |
2 GB read/write splitting instance (1 node, 3 read replicas) | redis.amber.logic.splitrw.mid.1db.3rodb.12proxy.multithread | 24 | 4 | 3 | 384 | 40,000 | 120,000 | 960,000 |
4 GB read/write splitting instance (1 node, 3 read replicas) | redis.amber.logic.splitrw.stand.1db.3rodb.12proxy.multithread | 24 | 4 | 3 | 384 | 40,000 | 120,000 | 960,000 |
8 GB read/write splitting instance (1 shard, 3 read replicas) | redis.amber.logic.splitrw.large.1db.3rodb.12proxy.multithread | 24 | 4 | 3 | 384 | 40,000 | 120,000 | 960,000 |
16 GB read/write splitting instance (1 shard, 3 read replicas) | redis.amber.logic.splitrw.2xlarge.1db.3rodb.12proxy.multithread | 24 | 4 | 3 | 384 | 40,000 | 120,000 | 960,000 |
32 GB read/write splitting instance (1 shard, 3 read replicas) | redis.amber.logic.splitrw.4xlarge.1db.3rodb.12proxy.multithread | 24 | 4 | 3 | 384 | 40,000 | 120,000 | 960,000 |
64 GB read/write splitting instance (1 shard, 3 read replicas) | redis.amber.logic.splitrw.8xlarge.1db.3rodb.12proxy.multithread | 24 | 4 | 3 | 384 | 40,000 | 120,000 | 960,000 |
1 GB read/write splitting instance (1 shard, 5 read replicas) | redis.amber.logic.splitrw.small.1db.5rodb.18proxy.multithread | 36 | 4 | 5 | 576 | 50,000 | 480,000 | 1,440,000 |
2 GB read/write splitting instance (1 shard, 5 read replicas) | redis.amber.logic.splitrw.mid.1db.5rodb.18proxy.multithread | 36 | 4 | 5 | 576 | 50,000 | 480,000 | 1,440,000 |
4 GB read/write splitting instance (1 shard, 5 read replicas) | redis.amber.logic.splitrw.stand.1db.5rodb.18proxy.multithread | 36 | 4 | 5 | 576 | 50,000 | 480,000 | 1,440,000 |
8 GB read/write splitting instance (1 shard, 5 read replicas) | redis.amber.logic.splitrw.large.1db.5rodb.18proxy.multithread | 36 | 4 | 5 | 576 | 50,000 | 480,000 | 1,440,000 |
16 GB read/write splitting instance (1 shard, 5 read replicas) | redis.amber.logic.splitrw.2xlarge.1db.5rodb.18proxy.multithread | 36 | 4 | 5 | 576 | 50,000 | 480,000 | 1,440,000 |
32 GB read/write splitting instance (1 shard, 5 read replicas) | redis.amber.logic.splitrw.4xlarge.1db.5rodb.18proxy.multithread | 36 | 4 | 5 | 576 | 50,000 | 480,000 | 1,440,000 |
64 GB read/write splitting instance (1 shard, 5 read replicas) | redis.amber.logic.splitrw.8xlarge.1db.5rodb.18proxy.multithread | 36 | 4 | 5 | 576 | 50,000 | 480,000 | 1,440,000 |
Notes about CPU cores
To ensure service stability, the system reserves a CPU core to process background tasks . In a cluster instance or a read/write splitting instance, the system reserves a CPU core for each shard or read replica to process background tasks.
Calculation rules for bandwidth values
Each bandwidth value in the preceding tables represents the maximum bandwidth for an instance of the corresponding instance type, which is the combined bandwidth of all shards or nodes in the instance.
The maximum total bandwidth for a read/write splitting instance is 2,048 Mbit/s. After the upper limit is reached, the bandwidth cannot be increased even if you add more nodes to the read/write splitting instance.
The bandwidth value applies to the upstream and downstream bandwidths. For example, if the bandwidth of an instance is 96 Mbit/s, the upstream and downstream bandwidths of the instance are both 96 Mbit/s.
NoteIf your instance may experience an unexpected or anticipated surge in traffic, you can adjust the bandwidth of the instance on demand. For more information, see Manually increase the bandwidth of an instance.
The bandwidth limits of Tair and Redis refer to the data transfer capacity of individual shards within their respective distributed systems. The limits are generally independent of the network connection types used by clients to connect to the shards.
For information about the FAQ about bandwidth, see FAQ about bandwidth.
Calculation rules for connections
Item | Description |
Maximum number of connections | Proxy mode: 480,000. If the upper limit of 480,000 connections is reached, subsequent connections cannot be established even if you add more shards or nodes. Note If your instance is created before March 1, 2020 and runs in proxy mode, the maximum number of connections to the instance is 200,000. When you run a specific Pub/Sub, blocking, or transaction command on a cluster instance in proxy mode, the system establishes a dedicated backend connection for your client. In this case, the maximum number of connections to the instance is subject to the maximum number of connections to a single shard in direct connection mode. This is because the connections cannot be aggregated in this scenario. |
Number of new connections per second | The maximum number of new connections per second refers to the number of connections that can be established per second. For example, assume that the maximum number of new connections to an instance per second is 50,000 and the actual number of connections at the Nth second after the instance starts to run is 12,000. In this case, at the (N+1)th second, the maximum number of connections to the instance is 62,000. This value is calculated by using the following formula: 12,000 + 50,000. Note When you run a specific Pub/Sub, blocking, or transaction command on a cluster instance in proxy mode, the actual number of new connections to the instance per second is subject to the maximum number of connections to a single shard in direct connection mode (2,000). For example, if an instance has four data shards, the maximum number of new connections to the instance per second is 8,000. |