This topic describes the specifications of read/write splitting DRAM-based instances of the ApsaraDB for Redis Enhanced Edition (Tair). These specifications include the memory capacity, maximum number of connections to each instance, maximum bandwidth, and queries per second (QPS) reference value.
Instance types
Instance type | InstanceClass value (used in API operations) | Number of CPU cores | Number of I/O threads | Number of read replicas | Maximum bandwidth (Mbit/s) | Maximum number of new connections per second | Maximum number of connections in proxy mode | 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 shard, 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 shard, 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 shard, 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 shard, 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 data shard or each read replica to process background tasks.
Calculation rules for bandwidth values
- The bandwidth value in the preceding table is the bandwidth of the instance. The bandwidth value is the sum of the bandwidth of all shards or nodes in the instance.
- The upper limit of the total bandwidth for a read/write splitting instance is 2,048 MB/s. After the upper limit is reached, the bandwidth cannot be increased even if you add more shards or 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 10 MB/s, the upstream and downstream bandwidths of the instance are both 10 MB/s. Note If your instance has unexpected or scheduled traffic peaks, you can adjust the bandwidth of the instance as needed. For more information, see Adjust the bandwidth of an ApsaraDB for Redis instance.
- The bandwidth value in the preceding table is the internal bandwidth of the ApsaraDB for Redis instance. The Internet bandwidth is determined by the internal bandwidth and is limited by the bandwidth of the connection between the ApsaraDB for Redis instance and the client. We recommend that you connect to the instance over an internal network to maximize performance.
Calculation rules for connections
The maximum number of new connections per second refers to the number of connections that are allowed to be established per second. The following example shows how the maximum number of new connections per second affects the maximum number of connections at a specific second: For example, assume that the maximum number of new connections per second of an instance is 10,000 and the maximum number of connections of the instance is 50,000. 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 is 22,000. This value is calculated by using the following formula: 12,000 + 10,000.