As instâncias do Tair (compatível com Redis OSS) com arquitetura de cluster ou de divisão de leitura e escrita apresentam um conjunto diferente de restrições de comandos em comparação com as instâncias de arquitetura padrão. Alguns comandos são desativados e os comandos de múltiplas chaves não podem acessar chaves em slots diferentes. Revise essas limitações antes de migrar cargas de trabalho ou escrever o código da aplicação.
Limitações de comandos para a arquitetura de cluster
As instâncias de cluster são compatíveis com várias versões do Redis. Para verificar a compatibilidade de comandos por versão, consulte Redis Open-Source Edition command support e Tair (Enterprise Edition) command support and limitations.
A arquitetura de cluster oferece suporte a dois modos de conexão: modo de conexão direta e modo de proxy. As limitações variam entre eles.
Modo de conexão direta
SELECT: Compatível, mas apenas para a inicialização do cluster. Se o cliente não for compatível com o SELECT durante a inicialização, o comando ficará indisponível.
SWAPDB: Compatível apenas com instâncias que usam Redis 7.0.
Comandos de múltiplas chaves: Todas as chaves devem estar no mesmo slot. Use hash tags para agrupar chaves no mesmo slot.
Transações: Todas as chaves de uma transação devem estar no mesmo slot, seguindo o comportamento do Redis Cluster de código aberto.
Modo de proxy
O modo de proxy adiciona uma camada intermediária que oculta a topologia do cluster, melhorando a compatibilidade do cliente. Esse modo herda todas as limitações da conexão direta e adiciona as seguintes restrições:
O proxy processa e retorna as solicitações CLIENT INFO e CLIENT ID diretamente, independentemente da versão do Redis.
O comando CLIENT KILL aceita dois formatos:
CLIENT KILL <ip:port>eCLIENT KILL ADDR <ip:port>.Os comandos DEL e EXISTS aceitam operações de múltiplas chaves entre slots diferentes.
O SCAN 0 começa no primeiro shard de dados e percorre cada shard sequencialmente. A transição para o próximo shard ocorre somente após a varredura completa do atual. Para examinar um shard específico, use o comando ISCAN.
Instâncias de cluster no modo de proxy aceitam comandos de proxy desenvolvidos pela Alibaba Cloud para gerenciamento e operações. Consulte Alibaba Cloud self-developed proxy commands.
Diferenças na saída do CLIENT LIST
Ao executar o CLIENT LIST, o proxy retorna as informações de todas as conexões com o nó de proxy. A saída difere do Redis nativo da seguinte forma:
|
Campo |
Comportamento |
|
|
Mesmo significado do Redis nativo |
|
|
Sem diferenciação no nó de proxy; o proxy define ambos como |
|
|
Sem significado específico |
Comportamento de transações no modo de proxy
O comportamento da transação depende da distribuição de slots das chaves envolvidas:
|
Cenário |
Resultado |
|
Todas as chaves no mesmo slot |
A transação executa normalmente e a semântica completa se aplica |
|
Chaves em slots diferentes, mas as chaves de cada comando individual no mesmo slot |
A transação executa normalmente; a semântica é garantida por comando, mas não entre comandos com chaves em slots diferentes |
|
Um único comando com chaves em slots diferentes |
O comando não é executado |
|
Comandos sem chave |
Alguns não são compatíveis com transações; consulte as tabelas de suporte a comandos abaixo |
Além disso, o Redis Cluster possui algumas limitações no uso de scripts Lua, e a arquitetura de cluster do Tair (compatível com Redis OSS) apresenta restrições adicionais. Para mais informações, consulte Special limitations for cluster architecture.
Limitações de comandos para instâncias com arquitetura de divisão de leitura e escrita
Instâncias de divisão de leitura e escrita são compatíveis com várias versões do Redis. Para verificar a compatibilidade de comandos por versão, consulte Redis Open-Source Edition command support e Tair (Enterprise Edition) command support and limitations.
As instâncias de divisão de leitura e escrita usam o modo de proxy por padrão e, portanto, possuem as mesmas restrições de comandos que as instâncias de cluster nesse modo. O proxy processa e retorna as solicitações CLIENT INFO e CLIENT ID diretamente, independentemente da versão do Redis.
Essas instâncias também aceitam comandos de proxy desenvolvidos pela Alibaba Cloud para gerenciamento e operações. Consulte Alibaba Cloud self-developed proxy commands.
Tabela de suporte a comandos para o modo de proxy
As tabelas a seguir aplicam-se tanto à arquitetura de cluster no modo de proxy quanto à arquitetura de divisão de leitura e escrita.
Legenda:
|
Símbolo |
Significado |
|
✔️ |
Compatível. Para comandos de múltiplas chaves, as operações entre slots diferentes são permitidas. |
|
⭕️ |
Compatível com limitações. Todas as chaves devem estar no mesmo slot (use hash tags). |
|
❌ |
Não compatível. |
|
Nota ① |
Retorna apenas |
|
Nota ② |
O proxy processa e retorna a solicitação diretamente, independentemente da versão do Redis. |
Bitmap
|
Comando |
Arquitetura de cluster |
Permitido em transações da arquitetura de cluster |
Arquitetura de divisão de leitura e escrita |
Permitido em transações da arquitetura de divisão de leitura e escrita |
|
BITCOUNT |
✔️ |
✔️ |
✔️ |
✔️ |
|
BITFIELD |
✔️ |
✔️ |
✔️ |
✔️ |
|
BITFIELD_RO |
❌ |
❌ |
❌ |
❌ |
|
BITOP |
⭕️ |
⭕️ |
✔️ |
✔️ |
|
BITPOS |
✔️ |
✔️ |
✔️ |
✔️ |
|
GETBIT |
✔️ |
✔️ |
✔️ |
✔️ |
|
SETBIT |
✔️ |
✔️ |
✔️ |
✔️ |
Cluster management
|
Comando |
Arquitetura de cluster |
Permitido em transações da arquitetura de cluster |
Arquitetura de divisão de leitura e escrita |
Permitido em transações da arquitetura de divisão de leitura e escrita |
|
CLUSTER ADDSLOTS ①② |
✔️ |
❌ |
✔️ |
❌ |
|
CLUSTER ADDSLOTSRANGE |
❌ |
❌ |
❌ |
❌ |
|
CLUSTER BUMPEPOCH |
❌ |
❌ |
❌ |
❌ |
|
CLUSTER COUNT-FAILURE-REPORTS ② |
✔️ |
❌ |
✔️ |
❌ |
|
CLUSTER COUNTKEYSINSLOT ② |
✔️ |
❌ |
✔️ |
❌ |
|
CLUSTER DELSLOTS ①② |
✔️ |
❌ |
✔️ |
❌ |
|
CLUSTER DELSLOTSRANGE |
❌ |
❌ |
❌ |
❌ |
|
CLUSTER FAILOVER ①② |
✔️ |
❌ |
✔️ |
❌ |
|
CLUSTER FLUSHSLOTS |
❌ |
❌ |
❌ |
❌ |
|
CLUSTER FORGET ①② |
✔️ |
❌ |
✔️ |
❌ |
|
CLUSTER GETKEYSINSLOT ①② |
✔️ |
❌ |
✔️ |
❌ |
|
CLUSTER INFO ② |
✔️ |
❌ |
✔️ |
❌ |
|
CLUSTER KEYSLOT ② |
✔️ |
❌ |
✔️ |
❌ |
|
CLUSTER LINKS |
❌ |
❌ |
❌ |
❌ |
|
CLUSTER MEET ①② |
✔️ |
❌ |
✔️ |
❌ |
|
CLUSTER MYID |
❌ |
❌ |
❌ |
❌ |
|
CLUSTER NODES ② |
✔️ |
❌ |
✔️ |
❌ |
|
CLUSTER REPLICAS |
❌ |
❌ |
❌ |
❌ |
|
CLUSTER REPLICATE ①② |
✔️ |
❌ |
✔️ |
❌ |
|
CLUSTER RESET ①② |
✔️ |
❌ |
✔️ |
❌ |
|
CLUSTER SAVECONFIG ①② |
✔️ |
❌ |
✔️ |
❌ |
|
CLUSTER SET-CONFIG-EPOCH ①② |
✔️ |
❌ |
✔️ |
❌ |
|
CLUSTER SETSLOT ①② |
✔️ |
❌ |
✔️ |
❌ |
|
CLUSTER SHARDS ② |
✔️ |
❌ |
✔️ |
❌ |
|
CLUSTER MYSHARDID ② |
✔️ |
❌ |
✔️ |
❌ |
|
CLUSTER SLAVES ② |
✔️ |
❌ |
✔️ |
❌ |
|
CLUSTER SLOTS ② |
✔️ |
❌ |
✔️ |
❌ |
|
READONLY ①② |
✔️ |
❌ |
✔️ |
❌ |
|
READWRITE ①② |
✔️ |
❌ |
✔️ |
❌ |
Connection management
|
Comando |
Arquitetura de cluster |
Permitido em transações da arquitetura de cluster |
Arquitetura de divisão de leitura e escrita |
Permitido em transações da arquitetura de divisão de leitura e escrita |
|
AUTH |
✔️ |
❌ |
✔️ |
✔️ |
|
CLIENT CACHING |
❌ |
❌ |
❌ |
❌ |
|
CLIENT GETNAME ② |
✔️ |
❌ |
✔️ |
❌ |
|
CLIENT GETREDIR |
❌ |
❌ |
❌ |
❌ |
|
CLIENT ID ② |
✔️ |
❌ |
✔️ |
❌ |
|
CLIENT INFO ② |
✔️ |
❌ |
✔️ |
❌ |
|
CLIENT KILL ② |
✔️ |
❌ |
✔️ |
❌ |
|
CLIENT LIST ② |
✔️ |
❌ |
✔️ |
❌ |
|
CLIENT NO-EVICT |
❌ |
❌ |
❌ |
❌ |
|
CLIENT PAUSE |
❌ |
❌ |
❌ |
❌ |
|
CLIENT REPLY |
❌ |
❌ |
❌ |
❌ |
|
CLIENT SETNAME ② |
✔️ |
❌ |
✔️ |
❌ |
|
CLIENT SETINFO ② |
✔️ |
❌ |
✔️ |
❌ |
|
CLIENT TRACKING |
❌ |
❌ |
❌ |
❌ |
|
CLIENT TRACKINGINFO |
❌ |
❌ |
❌ |
❌ |
|
CLIENT UNBLOCK |
❌ |
❌ |
❌ |
❌ |
|
CLIENT UNPAUSE |
❌ |
❌ |
❌ |
❌ |
|
ECHO |
✔️ |
❌ |
✔️ |
✔️ |
|
HELLO |
✔️ (com limitações) |
✔️ (com limitações) |
✔️ (com limitações) |
✔️ (com limitações) |
|
PING ② |
✔️ |
❌ |
✔️ |
✔️ |
|
QUIT ② |
✔️ |
✔️ |
✔️ |
✔️ |
|
RESET |
❌ |
❌ |
❌ |
❌ |
|
SELECT |
✔️ |
✔️ |
✔️ |
✔️ |
O comando HELLO vem desativado por padrão. Para ativá-lo, upgrade the proxy minor version para a versão 7.0.9 ou posterior e enable o parâmetro hello_enabled.
Generic
|
Comando |
Arquitetura de cluster |
Permitido em transações da arquitetura de cluster |
Arquitetura de divisão de leitura e escrita |
Permitido em transações da arquitetura de divisão de leitura e escrita |
|
COPY |
⭕️ |
⭕️ |
✔️ |
✔️ |
|
DEL |
✔️ |
⭕️ |
✔️ |
✔️ |
|
DUMP |
✔️ |
✔️ |
✔️ |
✔️ |
|
EXISTS |
✔️ |
⭕️ |
✔️ |
✔️ |
|
EXPIRE |
✔️ |
✔️ |
✔️ |
✔️ |
|
EXPIREAT |
✔️ |
✔️ |
✔️ |
✔️ |
|
EXPIRETIME |
✔️ |
✔️ |
✔️ |
✔️ |
|
KEYS |
✔️ |
❌ |
✔️ |
✔️ |
|
MIGRATE |
❌ |
❌ |
❌ |
❌ |
|
MOVE |
✔️ |
✔️ |
✔️ |
✔️ |
|
OBJECT |
✔️ |
✔️ |
✔️ |
✔️ |
|
OBJECT HELP |
✔️ |
✔️ |
✔️ |
✔️ |
|
PERSIST |
✔️ |
✔️ |
✔️ |
✔️ |
|
PEXPIRE |
✔️ |
✔️ |
✔️ |
✔️ |
|
PEXPIREAT |
✔️ |
✔️ |
✔️ |
✔️ |
|
PEXPIRETIME |
✔️ |
✔️ |
✔️ |
✔️ |
|
PTTL |
✔️ |
✔️ |
✔️ |
✔️ |
|
RANDOMKEY |
✔️ |
❌ |
✔️ |
✔️ |
|
RENAME |
⭕️ |
⭕️ |
✔️ |
✔️ |
|
RENAMENX |
⭕️ |
⭕️ |
✔️ |
✔️ |
|
RESTORE |
✔️ |
✔️ |
✔️ |
✔️ |
|
SCAN |
✔️ |
❌ |
✔️ |
✔️ |
|
SORT |
⭕️ |
⭕️ |
✔️ |
✔️ |
|
SORT_RO |
⭕️ |
⭕️ |
✔️ |
✔️ |
|
TOUCH |
✔️ |
⭕️ |
✔️ |
✔️ |
|
TTL |
✔️ |
✔️ |
✔️ |
✔️ |
|
TYPE |
✔️ |
✔️ |
✔️ |
✔️ |
|
UNLINK |
✔️ |
⭕️ |
✔️ |
✔️ |
|
WAIT |
✔️ |
❌ |
✔️ |
✔️ |
|
WAITAOF |
✔️ |
❌ |
✔️ |
✔️ |
Geospatial indices
|
Comando |
Arquitetura de cluster |
Permitido em transações da arquitetura de cluster |
Arquitetura de divisão de leitura e escrita |
Permitido em transações da arquitetura de divisão de leitura e escrita |
|
GEOADD |
✔️ |
✔️ |
✔️ |
✔️ |
|
GEODIST |
✔️ |
✔️ |
✔️ |
✔️ |
|
GEOHASH |
✔️ |
✔️ |
✔️ |
✔️ |
|
GEOPOS |
✔️ |
✔️ |
✔️ |
✔️ |
|
GEORADIUS |
⭕️ |
⭕️ |
✔️ |
✔️ |
|
GEORADIUSBYMEMBER |
⭕️ |
⭕️ |
✔️ |
✔️ |
|
GEOSEARCH |
✔️ |
✔️ |
✔️ |
✔️ |
|
GEOSEARCHSTORE |
⭕️ |
⭕️ |
✔️ |
✔️ |
Hash
|
Comando |
Arquitetura de cluster |
Permitido em transações da arquitetura de cluster |
Arquitetura de divisão de leitura e escrita |
Permitido em transações da arquitetura de divisão de leitura e escrita |
|
HDEL |
✔️ |
✔️ |
✔️ |
✔️ |
|
HEXISTS |
✔️ |
✔️ |
✔️ |
✔️ |
|
HGET |
✔️ |
✔️ |
✔️ |
✔️ |
|
HGETALL |
✔️ |
✔️ |
✔️ |
✔️ |
|
HINCRBY |
✔️ |
✔️ |
✔️ |
✔️ |
|
HINCRBYFLOAT |
✔️ |
✔️ |
✔️ |
✔️ |
|
HKEYS |
✔️ |
✔️ |
✔️ |
✔️ |
|
HLEN |
✔️ |
✔️ |
✔️ |
✔️ |
|
HMGET |
✔️ |
✔️ |
✔️ |
✔️ |
|
HMSET |
✔️ |
✔️ |
✔️ |
✔️ |
|
HRANDFIELD |
✔️ |
✔️ |
✔️ |
✔️ |
|
HSCAN |
✔️ |
✔️ |
✔️ |
✔️ |
|
HSET |
✔️ |
✔️ |
✔️ |
✔️ |
|
HSETNX |
✔️ |
✔️ |
✔️ |
✔️ |
|
HSTRLEN |
✔️ |
✔️ |
✔️ |
✔️ |
|
HVALS |
✔️ |
✔️ |
✔️ |
✔️ |
HyperLogLog
|
Comando |
Arquitetura de cluster |
Permitido em transações da arquitetura de cluster |
Arquitetura de divisão de leitura e escrita |
Permitido em transações da arquitetura de divisão de leitura e escrita |
|
PFADD |
✔️ |
✔️ |
✔️ |
✔️ |
|
PFCOUNT |
⭕️ |
⭕️ |
✔️ |
✔️ |
|
PFMERGE |
⭕️ |
⭕️ |
✔️ |
✔️ |
Lists
|
Comando |
Arquitetura de cluster |
Permitido em transações da arquitetura de cluster |
Arquitetura de divisão de leitura e escrita |
Permitido em transações da arquitetura de divisão de leitura e escrita |
|
BLPOP |
⭕️ |
⭕️ |
✔️ |
✔️ |
|
BLMOVE |
⭕️ |
⭕️ |
✔️ |
✔️ |
|
BLMPOP |
⭕️ |
⭕️ |
✔️ |
✔️ |
|
BRPOP |
⭕️ |
⭕️ |
✔️ |
✔️ |
|
BRPOPLPUSH |
⭕️ |
⭕️ |
✔️ |
✔️ |
|
LINDEX |
✔️ |
✔️ |
✔️ |
✔️ |
|
LINSERT |
✔️ |
✔️ |
✔️ |
✔️ |
|
LLEN |
✔️ |
✔️ |
✔️ |
✔️ |
|
LMOVE |
⭕️ |
⭕️ |
✔️ |
✔️ |
|
LMPOP |
⭕️ |
⭕️ |
✔️ |
✔️ |
|
LPOP |
✔️ |
✔️ |
✔️ |
✔️ |
|
LPUSH |
✔️ |
✔️ |
✔️ |
✔️ |
|
LPUSHX |
✔️ |
✔️ |
✔️ |
✔️ |
|
LRANGE |
✔️ |
✔️ |
✔️ |
✔️ |
|
LREM |
✔️ |
✔️ |
✔️ |
✔️ |
|
LSET |
✔️ |
✔️ |
✔️ |
✔️ |
|
LTRIM |
✔️ |
✔️ |
✔️ |
✔️ |
|
RPOP |
✔️ |
✔️ |
✔️ |
✔️ |
|
RPOPLPUSH |
⭕️ |
⭕️ |
✔️ |
✔️ |
|
RPUSH |
✔️ |
✔️ |
✔️ |
✔️ |
|
RPUSHX |
✔️ |
✔️ |
✔️ |
✔️ |
Pub/Sub
|
Comando |
Arquitetura de cluster |
Permitido em transações da arquitetura de cluster |
Arquitetura de divisão de leitura e escrita |
Permitido em transações da arquitetura de divisão de leitura e escrita |
|
PSUBSCRIBE |
✔️ |
❌ |
✔️ |
❌ |
|
PUBLISH |
✔️ |
✔️ |
✔️ |
✔️ |
|
PUBSUB |
✔️ |
❌ |
✔️ |
✔️ |
|
PUBSUB HELP |
❌ |
❌ |
❌ |
❌ |
|
PUBSUB SHARDCHANNELS |
✔️ |
❌ |
✔️ |
✔️ |
|
PUBSUB SHARDNUMSUB |
✔️ |
❌ |
✔️ |
✔️ |
|
PUNSUBSCRIBE |
✔️ |
❌ |
✔️ |
❌ |
|
SPUBLISH |
✔️ |
✔️ |
✔️ |
✔️ |
|
SUBSCRIBE |
✔️ |
❌ |
✔️ |
❌ |
|
SSUBSCRIBE |
✔️ |
❌ |
✔️ |
❌ |
|
SUNSUBSCRIBE |
✔️ |
❌ |
✔️ |
❌ |
|
UNSUBSCRIBE |
✔️ |
❌ |
✔️ |
❌ |
Scripting and functions
|
Comando |
Arquitetura de cluster |
Permitido em transações da arquitetura de cluster |
Arquitetura de divisão de leitura e escrita |
Permitido em transações da arquitetura de divisão de leitura e escrita |
|
EVAL |
⭕️ |
❌ |
✔️ |
✔️ |
|
EVAL_RO |
⭕️ |
❌ |
✔️ |
✔️ |
|
EVALSHA |
⭕️ |
❌ |
✔️ |
✔️ |
|
EVALSHA_RO |
⭕️ |
❌ |
✔️ |
✔️ |
|
FCALL |
⭕️ |
❌ |
✔️ |
✔️ |
|
FCALL_RO |
⭕️ |
❌ |
✔️ |
✔️ |
|
FUNCTION DELETE |
✔️ |
❌ |
✔️ |
❌ |
|
FUNCTION DUMP |
✔️ |
❌ |
✔️ |
❌ |
|
FUNCTION FLUSH |
✔️ |
❌ |
✔️ |
❌ |
|
FUNCTION HELP |
✔️ |
❌ |
✔️ |
❌ |
|
FUNCTION KILL |
✔️ |
❌ |
✔️ |
❌ |
|
FUNCTION LIST |
✔️ |
❌ |
✔️ |
❌ |
|
FUNCTION LOAD |
✔️ |
❌ |
✔️ |
❌ |
|
FUNCTION RESTORE |
✔️ |
❌ |
✔️ |
❌ |
|
FUNCTION STATS |
✔️ |
❌ |
✔️ |
❌ |
|
SCRIPT DEBUG |
❌ |
❌ |
❌ |
❌ |
|
SCRIPT EXISTS |
✔️ |
❌ |
✔️ |
❌ |
|
SCRIPT FLUSH |
✔️ |
❌ |
✔️ |
❌ |
|
SCRIPT KILL |
✔️ |
❌ |
✔️ |
❌ |
|
SCRIPT LOAD |
✔️ |
❌ |
✔️ |
❌ |
Server management
|
Comando |
Arquitetura de cluster |
Permitido em transações da arquitetura de cluster |
Arquitetura de divisão de leitura e escrita |
Permitido em transações da arquitetura de divisão de leitura e escrita |
|
ACL CAT |
❌ |
❌ |
❌ |
❌ |
|
ACL DELUSER |
❌ |
❌ |
❌ |
❌ |
|
ACL DRYRUN |
❌ |
❌ |
❌ |
➖ |
|
ACL GENPASS |
❌ |
❌ |
❌ |
❌ |
|
ACL GETUSER |
❌ |
❌ |
❌ |
❌ |
|
ACL HELP |
❌ |
❌ |
❌ |
❌ |
|
ACL LIST |
❌ |
❌ |
❌ |
❌ |
|
ACL LOAD |
❌ |
❌ |
❌ |
❌ |
|
ACL LOG |
❌ |
❌ |
❌ |
❌ |
|
ACL SAVE |
❌ |
❌ |
❌ |
❌ |
|
ACL SETUSER |
❌ |
❌ |
❌ |
❌ |
|
ACL USERS |
❌ |
❌ |
❌ |
❌ |
|
ACL WHOAMI |
❌ |
❌ |
❌ |
❌ |
|
BGREWRITEAOF |
❌ |
❌ |
❌ |
❌ |
|
BGSAVE |
❌ |
❌ |
❌ |
❌ |
|
COMMAND |
✔️ |
❌ |
✔️ |
✔️ |
|
COMMAND COUNT |
✔️ |
❌ |
✔️ |
✔️ |
|
COMMAND DOCS |
✔️ |
❌ |
✔️ |
✔️ |
|
COMMAND GETKEYS |
✔️ |
❌ |
✔️ |
✔️ |
|
COMMAND GETKEYSANDFLAGS |
✔️ |
❌ |
✔️ |
✔️ |
|
COMMAND INFO |
✔️ |
❌ |
✔️ |
✔️ |
|
COMMAND LIST |
✔️ |
❌ |
✔️ |
✔️ |
|
CONFIG GET |
✔️ |
❌ |
✔️ |
✔️ |
|
CONFIG HELP |
❌ |
❌ |
❌ |
❌ |
|
CONFIG RESETSTAT |
❌ |
❌ |
❌ |
❌ |
|
CONFIG REWRITE |
❌ |
❌ |
❌ |
❌ |
|
CONFIG SET ①② |
✔️ |
❌ |
✔️ |
✔️ |
|
DBSIZE |
✔️ |
❌ |
✔️ |
✔️ |
|
DEBUG OBJECT |
❌ |
❌ |
❌ |
❌ |
|
DEBUG SEGFAULT |
❌ |
❌ |
❌ |
❌ |
|
FAILOVER |
❌ |
❌ |
❌ |
❌ |
|
FLUSHALL |
✔️ |
❌ |
✔️ |
✔️ |
|
FLUSHDB |
✔️ |
❌ |
✔️ |
✔️ |
|
INFO |
✔️ |
❌ |
✔️ |
✔️ |
|
LASTSAVE |
❌ |
❌ |
❌ |
❌ |
|
LATENCY DOCTOR |
❌ |
❌ |
❌ |
❌ |
|
LATENCY GRAPH |
❌ |
❌ |
❌ |
❌ |
|
LATENCY HELP |
❌ |
❌ |
❌ |
❌ |
|
LATENCY HISTOGRAM |
❌ |
❌ |
❌ |
❌ |
|
LATENCY HISTORY |
❌ |
❌ |
❌ |
❌ |
|
LATENCY LATEST |
❌ |
❌ |
❌ |
❌ |
|
LATENCY RESET |
❌ |
❌ |
❌ |
❌ |
|
LOLWUT |
✔️ |
❌ |
✔️ |
✔️ |
|
MEMORY DOCTOR |
✔️ |
❌ |
✔️ |
❌ |
|
MEMORY HELP |
✔️ |
❌ |
✔️ |
❌ |
|
MEMORY MALLOC-STATS |
✔️ |
❌ |
✔️ |
❌ |
|
MEMORY PURGE |
✔️ |
❌ |
✔️ |
❌ |
|
MEMORY STATS |
✔️ |
❌ |
✔️ |
❌ |
|
MEMORY USAGE |
✔️ |
❌ |
✔️ |
❌ |
|
MODULE LIST |
❌ |
❌ |
❌ |
❌ |
|
MODULE LOAD |
❌ |
❌ |
❌ |
❌ |
|
MODULE LOADEX |
❌ |
❌ |
❌ |
❌ |
|
MODULE UNLOAD |
❌ |
❌ |
❌ |
❌ |
|
MONITOR |
✔️ |
❌ |
✔️ |
❌ |
|
PSYNC |
❌ |
❌ |
❌ |
❌ |
|
REPLICAOF |
❌ |
❌ |
❌ |
❌ |
|
ROLE ② |
✔️ |
❌ |
✔️ |
❌ |
|
SAVE |
❌ |
❌ |
❌ |
❌ |
|
SHUTDOWN |
❌ |
❌ |
❌ |
❌ |
|
SLAVEOF |
❌ |
❌ |
❌ |
❌ |
|
SLOWLOG |
✔️ |
❌ |
✔️ |
✔️ |
|
SLOWLOG HELP |
✔️ |
❌ |
✔️ |
✔️ |
|
SLOWLOG RESET |
✔️ |
❌ |
✔️ |
✔️ |
|
SWAPDB |
✔️ |
❌ |
✔️ |
✔️ |
|
SYNC |
❌ |
❌ |
❌ |
❌ |
|
TIME |
✔️ |
❌ |
✔️ |
✔️ |
Sentinel
|
Comando |
Arquitetura de cluster |
Permitido em transações da arquitetura de cluster |
Arquitetura de divisão de leitura e escrita |
Permitido em transações da arquitetura de divisão de leitura e escrita |
|
SENTINEL sentinels ② |
✔️ |
❌ |
✔️ |
❌ |
|
SENTINEL get-master-addr-by-name ② |
✔️ |
❌ |
✔️ |
❌ |
Set
|
Comando |
Arquitetura de cluster |
Permitido em transações da arquitetura de cluster |
Arquitetura de divisão de leitura e escrita |
Permitido em transações da arquitetura de divisão de leitura e escrita |
|
SADD |
✔️ |
✔️ |
✔️ |
✔️ |
|
SCARD |
✔️ |
✔️ |
✔️ |
✔️ |
|
SDIFF |
✔️ |
⭕️ |
✔️ |
✔️ |
|
SDIFFSTORE |
✔️ |
⭕️ |
✔️ |
✔️ |
|
SINTER |
✔️ |
⭕️ |
✔️ |
✔️ |
|
SINTERCARD |
✔️ |
⭕️ |
✔️ |
✔️ |
|
SINTERSTORE |
✔️ |
⭕️ |
✔️ |
✔️ |
|
SISMEMBER |
✔️ |
✔️ |
✔️ |
✔️ |
|
SMEMBERS |
✔️ |
✔️ |
✔️ |
✔️ |
|
SMISMEMBER |
✔️ |
✔️ |
✔️ |
✔️ |
|
SMOVE |
✔️ |
⭕️ |
✔️ |
✔️ |
|
SPOP |
✔️ |
✔️ |
✔️ |
✔️ |
|
SRANDMEMBER |
✔️ |
✔️ |
✔️ |
✔️ |
|
SREM |
✔️ |
✔️ |
✔️ |
✔️ |
|
SSCAN |
✔️ |
✔️ |
✔️ |
✔️ |
|
SUNION |
✔️ |
⭕️ |
✔️ |
✔️ |
|
SUNIONSTORE |
✔️ |
⭕️ |
✔️ |
✔️ |
Sorted set
|
Comando |
Arquitetura de cluster |
Permitido em transações da arquitetura de cluster |
Arquitetura de divisão de leitura e escrita |
Permitido em transações da arquitetura de divisão de leitura e escrita |
|
BZMPOP |
⭕️ |
⭕️ |
✔️ |
✔️ |
|
BZPOPMAX |
⭕️ |
⭕️ |
✔️ |
✔️ |
|
BZPOPMIN |
⭕️ |
⭕️ |
✔️ |
✔️ |
|
ZADD |
✔️ |
✔️ |
✔️ |
✔️ |
|
ZCARD |
✔️ |
✔️ |
✔️ |
✔️ |
|
ZCOUNT |
✔️ |
✔️ |
✔️ |
✔️ |
|
ZDIFF |
✔️ |
⭕️ |
✔️ |
✔️ |
|
ZDIFFSTORE |
✔️ |
⭕️ |
✔️ |
✔️ |
|
ZINCRBY |
✔️ |
✔️ |
✔️ |
✔️ |
|
ZINTER |
✔️ |
✔️ |
✔️ |
✔️ |
|
ZINTERCARD |
✔️ |
⭕️ |
✔️ |
✔️ |
|
ZINTERSTORE |
✔️ |
⭕️ |
✔️ |
✔️ |
|
ZLEXCOUNT |
✔️ |
✔️ |
✔️ |
✔️ |
|
ZMPOP |
⭕️ |
⭕️ |
✔️ |
✔️ |
|
ZMSCORE |
✔️ |
✔️ |
✔️ |
✔️ |
|
ZPOPMAX |
✔️ |
✔️ |
✔️ |
✔️ |
|
ZPOPMIN |
✔️ |
✔️ |
✔️ |
✔️ |
|
ZRANDMEMBER |
✔️ |
✔️ |
✔️ |
✔️ |
|
ZRANGE |
✔️ |
✔️ |
✔️ |
✔️ |
|
ZRANGEBYLEX |
✔️ |
✔️ |
✔️ |
✔️ |
|
ZRANGEBYSCORE |
✔️ |
✔️ |
✔️ |
✔️ |
|
ZRANGESTORE |
⭕️ |
⭕️ |
✔️ |
✔️ |
|
ZRANK |
✔️ |
✔️ |
✔️ |
✔️ |
|
ZREM |
✔️ |
✔️ |
✔️ |
✔️ |
|
ZREMRANGEBYLEX |
✔️ |
✔️ |
✔️ |
✔️ |
|
ZREMRANGEBYRANK |
✔️ |
✔️ |
✔️ |
✔️ |
|
ZREMRANGEBYSCORE |
✔️ |
✔️ |
✔️ |
✔️ |
|
ZREVRANGE |
✔️ |
✔️ |
✔️ |
✔️ |
|
ZREVRANGEBYLEX |
✔️ |
✔️ |
✔️ |
✔️ |
|
ZREVRANGEBYSCORE |
✔️ |
✔️ |
✔️ |
✔️ |
|
ZREVRANK |
✔️ |
✔️ |
✔️ |
✔️ |
|
ZSCAN |
✔️ |
✔️ |
✔️ |
✔️ |
|
ZSCORE |
✔️ |
✔️ |
✔️ |
✔️ |
|
ZUNION |
✔️ |
⭕️ |
✔️ |
✔️ |
|
ZUNIONSTORE |
✔️ |
⭕️ |
✔️ |
✔️ |
Stream
|
Comando |
Arquitetura de cluster |
Permitido em transações da arquitetura de cluster |
Arquitetura de divisão de leitura e escrita |
Permitido em transações da arquitetura de divisão de leitura e escrita |
|
XACK |
✔️ |
✔️ |
✔️ |
✔️ |
|
XADD |
✔️ |
✔️ |
✔️ |
✔️ |
|
XAUTOCLAIM |
✔️ |
✔️ |
✔️ |
✔️ |
|
XCLAIM |
✔️ |
✔️ |
✔️ |
✔️ |
|
XDEL |
✔️ |
✔️ |
✔️ |
✔️ |
|
XGROUP |
✔️ |
✔️ |
✔️ |
✔️ |
|
XGROUP CREATECONSUMER |
✔️ |
✔️ |
✔️ |
✔️ |
|
XINFO |
✔️ |
✔️ |
✔️ |
✔️ |
|
XLEN |
✔️ |
✔️ |
✔️ |
✔️ |
|
XPENDING |
✔️ |
✔️ |
✔️ |
✔️ |
|
XRANGE |
✔️ |
✔️ |
✔️ |
✔️ |
|
XREAD |
⭕️ |
⭕️ |
✔️ |
✔️ |
|
XREADGROUP |
⭕️ |
⭕️ |
✔️ |
✔️ |
|
XREVRANGE |
✔️ |
✔️ |
✔️ |
✔️ |
|
XTRIM |
✔️ |
✔️ |
✔️ |
✔️ |
String
|
Comando |
Arquitetura de cluster |
Permitido em transações da arquitetura de cluster |
Arquitetura de divisão de leitura e escrita |
Permitido em transações da arquitetura de divisão de leitura e escrita |
|
APPEND |
✔️ |
✔️ |
✔️ |
✔️ |
|
DECR |
✔️ |
✔️ |
✔️ |
✔️ |
|
DECRBY |
✔️ |
✔️ |
✔️ |
✔️ |
|
GET |
✔️ |
✔️ |
✔️ |
✔️ |
|
GETDEL |
✔️ |
✔️ |
✔️ |
✔️ |
|
GETEX |
✔️ |
✔️ |
✔️ |
✔️ |
|
GETRANGE |
✔️ |
✔️ |
✔️ |
✔️ |
|
GETSET |
✔️ |
✔️ |
✔️ |
✔️ |
|
LCS |
✔️ |
⭕️ |
✔️ |
✔️ |
|
INCR |
✔️ |
✔️ |
✔️ |
✔️ |
|
INCRBY |
✔️ |
✔️ |
✔️ |
✔️ |
|
INCRBYFLOAT |
✔️ |
✔️ |
✔️ |
✔️ |
|
MGET |
✔️ |
⭕️ |
✔️ |
✔️ |
|
MSET |
✔️ |
⭕️ |
✔️ |
✔️ |
|
MSETNX |
⭕️ |
⭕️ |
✔️ |
✔️ |
|
PSETEX |
✔️ |
✔️ |
✔️ |
✔️ |
|
SET |
✔️ |
✔️ |
✔️ |
✔️ |
|
SETEX |
✔️ |
✔️ |
✔️ |
✔️ |
|
SETNX |
✔️ |
✔️ |
✔️ |
✔️ |
|
SETRANGE |
✔️ |
✔️ |
✔️ |
✔️ |
|
STRALGO |
❌ |
❌ |
❌ |
❌ |
|
STRLEN |
✔️ |
✔️ |
✔️ |
✔️ |
Transactions
|
Comando |
Arquitetura de cluster |
Permitido em transações da arquitetura de cluster |
Arquitetura de divisão de leitura e escrita |
Permitido em transações da arquitetura de divisão de leitura e escrita |
|
DISCARD |
✔️ |
✔️ |
✔️ |
✔️ |
|
EXEC |
✔️ |
✔️ |
✔️ |
✔️ |
|
MULTI |
✔️ |
❌ |
✔️ |
❌ |
|
UNWATCH |
✔️ |
❌ |
✔️ |
✔️ |
|
WATCH |
⭕️ |
❌ |
✔️ |
❌ |
Perguntas frequentes
As instâncias com arquitetura de cluster e de divisão de leitura e escrita no modo de proxy são compatíveis com o comando WAIT?
Sim. O comando WAIT é compatível com as versões de proxy 7.1.5 e posteriores. Se você usar uma versão anterior, upgrade the proxy version.