FAQs
How secure is Cloud Memory Redis?
Access Security
Cloud Memory Redis is "intranet-access only and account-isolated". Therefore, only cloud servers under the same account can access the Cloud Memory Redis instance.
Data Security
All memory data is persistent on disk and will not be lost due to service failure or restart, and eliminating the need for data re-warming.
What is the maximum capacity supported by a single instance?
The capacity limit of a master-replica Redis instance is 64GB (if the limit is 32GB, you need to upgrade to NVMe version of master-replica Redis to increase the capacity limit).
The theoretical limit for the capacity of a distributed Redis instance is unlimited, but a work order needs to be applied for capacities larger than 16TB.
What protocols does master-replica Redis support? Is it the native protocol?
Master-replica Redis supports all native data read and write commands, but for security reasons, the following commands are disabled:
BGREWRITEAOF BGSAVE DEBUG CONFIG SAVE SHUTDOWN SLAVEOF
Also, restrictions have been placed on FLUSH commands. Users can clear data with FLUSHALL or FLUSHDB via the "Data Cleanup" feature on the instance details page of the console. If you need to use this command, please contact technical support.
What protocols does the distributed Redis proxy support? Is it the native protocol?
The distributed version of Redis proxy is suitable for clients using single-machine Redis methods and does not support cluster modes (clients using cluster modes can opt to connect directly to the distributed Redis back-end shards). It supports pipelining and asynchronous read and write operations.
The Redis protocols currently not supported by the distributed Redis proxy are as follows (compared to Redis 3.2):
CLUSTER KEYS MIGRATE MOVE OBJECT RANDOMKEY MSETNX BLPOP BRPOP BRPOPLPUSH PFMERGE GEOADD GEOPOS GEODIST GEORADIUS GEORADIUSBYMEMBER GEOHASH PSUBSCRIBE PUBLISH PUBSUB PUNSUBSCRIBE SUBSCRIBE UNSUBSCRIBE DISCARD EXEC MULTI UNWATCH WATCH EVAL EVALSHA SCRIPT AUTH ECHO SELECT BGREWRITEAOF BGSAVE CLIENT CONFIG DBSIZE DEBUG FLUSHALL FLUSHDB LASTSAVE MONITOR PSYNC SAVE SHUTDOWN SLAVEOF SLOWLOG SYNC TIME
Partially supported protocols:
MSETNX - Does not support multi-Key operations
SORT - Does not support BY option and GET option
What are the restrictions for using Distributed Redis?
Apart from certain unsupported protocols, a distributed Redis instance supports only one database, i.e., only select 0 is meaningful, while other selections have no effect. The keys command in Redis is resource-intensive, so it’s recommended to minimize its usage in business operations, or to find alternative methods. For batch commands such as mget, mset, del, or pipeline operations, it’s advisable to keep the batch size below 1000, as exceeding this may result in latency or timeout issues.
The support and prohibition of cluster commands of Distributed Redis Backend Partition
Similar to the native Redis cluster, this setup supports all standard Redis operations. For operations on cluster nodes, certain query functions—such as CLUSTER NODES, CLUSTER SLOTS, and CLUSTER KEYSLOT—are supported, while node modifications can be managed through the console. Cross-node operations, however, such as mget and keys, are not supported.
How does Cloud Memory Redis ensure high availability of storage service?
A cloud memory Redis instance has two storage nodes, master and slave, that ensure data consistency through real-time synchronization. If the master node goes down, the system will automatically switch to the slave node to continue providing read-write services.
What if Cloud Memory Redis runs out of storage capacity?
If you're running out of storage space, you're recommended to scale it up. For master-replica Redis instances that have reached their maximum capacity (32GB or 64GB), migration to the NVMe version of master-replica Redis or Distributed Redis is necessary for further scaling. You can create a new instance with the desired specifications, perform self-service migration using UDTS, or contact technical support for assistance. If the backend partition of Distributed Redis reaches capacity limits, you will need to initiate a partition split task to expand by splitting.
If scaling is not performed in a timely manner, write failures may occur. Note: If the allkeys-lru eviction policy is enabled, data may be evicted during write operations, which could also result in write failures. Please ensure timely scaling upon receiving alerts to prevent any business disruptions.
What should be noted with the high availability of master-replica Redis?
master-replica Redis's high availability is based on the master-replica (slaveof) implementation of the native Redis. Because Redis's master-replica asynchronous, URRedis will automatically switch in the event of failure. Although the time is very short, in theory, there might still be a data disparity.
What is the AOF file rewriting mechanism of Distributed Redis like?
The AOF rewriting mechanism of each shard of Distributed Redis is consistent with the AOF rewriting mechanism of master-replica Redis.
What is the QPS limit of the Distributed Redis?
Benchmark data (non-batch requests):
For a key size of 128B, value size of 100B, and concurrent connections of 1000;
8G two shards: QPS can reach 120K+;
16G four shards: QPS can reach 240K+;
Memory instance performance and memory capacity are linearly related, a single shard can provide 60K+ QPS. A single IP supports up to 100K QPS, and to increase performance beyond this value, two or more IPs are required simultaneously.
There is no QPS limit for Distributed Redis, its performance and capacity are directly related, which can be horizontally scaled.
How many access IPs are provided by master-replica Redis?
master-replica Redis only provides one accessible IP. This IP will automatically migrate in case of failure. Please do not use the IP of the slave, as this IP might lose functionality in case of failure.
Will the Slave of master-replica Redis keep up to date with its Master?
The Master's update will be automatically replicated to its associated Slave. However, due to Redis's asynchronous replication technology, for various reasons, updates on the Slave may lag behind the Master. Possible reasons include an I/O writing amount of the Master exceeding the syncing speed of the Slave or network latency between the Master and the Slave. Therefore, there might be a lag or certain level of data inconsistency between the Slave and its Master at some point.
What is the rule for Cloud Memory Redis to delete expired key data?
Cloud Memory Redis uses two ways to delete expired keys:
-
Active expiration, where the system periodically checks and deletes keys when expired keys are found.
-
Passive expiration, when a user accesses a key and that key has already expired, then the system deletes it.
What is the default data eviction policy for Cloud Memory Redis?
Distributed Redis with the prefix umem uses a default eviction policy: volatile-lru, if you want to modify it, you need to apply for a non-standard operation by issuing a ticket;
Distributed Redis with prefix udredis uses a default eviction policy: no-enviction, if you want to modify it, you need to apply for a non-standard operation by issuing a ticket;
master-replica Redis uses a default eviction policy: no-enviction, users can change this in file management on the console;
volatile-lru: uses LRU algorithm to evict data from the data set where an expiration time has been set.
volatile-ttl: chooses data close to expiration for eviction from the data set where an expiration time has been set.
volatile-random: randomly selects data for eviction from the data set where an expiration time has been set.
allkeys-lru: uses LRU algorithm to evict data from all data sets.
allkeys-random: chooses any data for eviction from the data set.
no-enviction: prohibits data eviction.
What is the QPS of master-replica Redis?
The reference QPS of master-replica Redis is 80,000. Please refer to the pressure test data document for the specific QPS size. After reaching 100% load, QPS cannot be increased.
Why is there no significant drop in used memory after a lot of keys are deleted in master-replica Redis?
The memory usage of master-replica Redis is determined by taking the higher value between used_memory (data size) and used_memory_rss (physical memory usage, indicating the amount of memory requested from the OS; actual use may include memory fragments) from the Redis info command. Often, even after deleting a substantial number of keys, there may be little reduction in used_memory_rss, although used_memory decreases accordingly—this is due to Redis's internal memory management policies. The ratio of used_memory_rss to used_memory is called the memory fragmentation rate, which typically stays below 150%.
To reduce the fragmentation rate, you can consider running online fragmentation reduction through the console, restarting Redis, or exploring Redis migration through alternative methods.
Does Redis scaling affect online services?
When performing capacity upgrades or downgrades for distributed or master-replica Redis on the console, data migration may be required. If migration is necessary, a notice will be displayed on the console with potential impacts as follows: Redis services remain available throughout the upgrade or downgrade, though load increases as data synchronization begins. Additionally, there will be a brief, approximately 3-second disconnection when high-availability IP switches over. It is recommended to perform these operations during off-peak business hours whenever possible.
After scaling distributed Redis, the backend may initiate shard addition to increase processing capability and improve performance. Shard addition occurs through online migration, which may introduce slight request delays. Therefore, this migration is typically scheduled during early morning hours. If large amounts of data require migration, it may be spread over multiple nights, with the process lasting one or several early mornings, depending on data volume. If urgent migration is needed, technical support can be notified. For downscaling, please contact technical support, as this non-standard operation is performed by appointment based on business requirements.
What is the short connection concurrency performance of master-replica Redis like?
Short connection concurrency performance of master-replica Redis is about 10K QPS as measured by the redis_benchmark tool. If your business service requires high short connection requests, consider using standalone Memcache.
How does Redis calculate usage and usage rate?
Usage: It is calculated as the max value of used_memory (data size) and used_memory_rss (physical memory occupied), which are returned by the info command.
Usage Rate: Usage / Purchased Capacity * 100%
What should be kept in mind when restarting master-replica Redis?
The restart process initiates by sending the shutdown command to the Redis process, shutting down Redis, and then bringing the Redis process back online. Upon restart, the Redis process will load data from the AOF (Append-Only File). For Redis instances with capacities exceeding 2GB, the AOF file tends to be large, resulting in longer loading times. If AOF persistence has been disabled in configuration management, data will be cleared after a restart. Please proceed with caution.
What is the AOF Rewrite Mechanism for master-replica Redis?
Capacity | Automatic Rewrite Threshold (AOF Size) | Operational Time Rewrite Threshold (AOF Size) |
---|---|---|
1GB, 2GB | 20GB | 5GB |
4GB, 6GB, 8GB | 50GB | 10GB |
12GB, 16GB, 24GB, 32GB | 100GB | 40GB |
40GB, 48GB | 100GB | 60GB |
56GB, 64GB | 100GB | 70GB |
What is the maximum number of connections for a newly created master-replica Redis?
Capacity | Number of Connections |
---|---|
1GB | 10000 |
2GB | 20000 |
4GB, 6GB | 30000 |
8GB, 12GB | 40000 |
16GB, 24GB | 50000 |
32GB, 40GB, 48GB, 56GB, 64GB | 80000 |
Are backups deleted after the deletion of a Redis Instance?
After the deletion of a master-replica Redis instance, backups (including both automatic and manual backups) will be retained for 7 days and then automatically recycled.
Bandwidth of master-replica Redis
The theoretical bandwidth of master-replica Redis is below 2Gb. The actual bandwidth is subject to the host conditions. If you need stable high bandwidth, you can consider Performance Enhanced master-replica Redis.
Distributed Redis Proxy Bandwidth
Number of Cores | Intranet Bandwidth Limit |
---|---|
4 cores and below | 2Gb |
8 cores | 4Gb |
16 cores | 7.5Gb |
32 cores | 15Gb |
64 cores | 22Gb |
Distributed Redis Proxy Specification
The supported specifications of the distributed proxy are: 2 cores 4GB memory, 4 cores 8GB memory, 8 cores 16GB memory, 16 cores 32GB memory, 32 cores 64GB memory, 64 cores 128GB memory.