All Products
Search
Document Center

Tair (Redis® OSS-Compatible):Parameters that can be configured for Redis Open-Source Edition instances

Last Updated:Jul 10, 2025

You can fine-tune and customize parameters for your Tair (Redis OSS-compatible) instances based on your business scenarios to improve the performance and security of the instances. This topic describes the parameters supported in different engine versions and architectures.

Precautions

  • If the Parameter is not supported for current version error is returned when you configure parameters, update the minor version of your instance. For more information, see Update the minor version of an instance.

  • After you submit the modifications for specific parameters, your instance is automatically restarted. During the restart, the instance encounters transient connections that last for a few seconds. On the page for modifying parameters, the Restart and Take Effect column indicates whether the instance must be restarted for the modifications to take effect. For more information, see Configure parameters.

Important

This topic describes only the parameters for Redis Open-Source Edition instances. For information about the parameters for Tair (Enterprise Edition) instances, including memory-optimized, persistent memory-optimized, and ESSD/SSD-based instances, see Parameters that can be configured for Tair (Enterprise Edition) instances.

Parameters

The following section describes the symbols used in the tables of this topic:

  • The ✔️ symbol indicates that the major version or instance architecture supports the parameter.

  • The ❌ symbol indicates that the major version or instance architecture does not support the parameter.

Note

Database kernel parameters

Parameter

Description

Instance major version and architecture

Version 7.0

Version 6.0

Version 5.0

Version 4.0

Redis 2.8

#no_loose_check-whitelist-always

Specifies whether to check that the IP address of a client is added to a whitelist of the instance after password-free access is enabled for the instance. The client is deployed in the same virtual private cloud (VPC) as the instance. Valid values:

  • yes: After you enable password-free access for the instance, you must also add the IP address of a client that is deployed in the same VPC as the instance to a whitelist of the instance before the client can connect to the instance.

    If the (error) ERR illegal address error is returned, the whitelist is improperly configured.

  • no (default): After you enable password-free access for the instance, you can connect a client that is deployed in the same VPC as the instance to the instance without adding the IP address of the client to a whitelist of the instance.

Note

This parameter is available only for classic instances.

Standard️️✔️

Cluster✔️

Read/write splitting✔️

Standard️️✔️

Cluster✔️

Read/write splitting✔️

#no_loose_disabled-commands

The disabled commands. You can use this parameter to disable the commands that may have high risks or high time complexity based on your business requirements, such as FLUSHALL, FLUSHDB, KEYS, HGETALL, EVAL, EVALSHA, and SCRIPT.

Note
  • Specify commands in lowercase letters and separate the commands with commas (,).

  • Even if you disable the FLUSHALL command, the Clear Data feature in the Tair console can still be used.

  • To ensure stable instance performance, Tair (Redis OSS-compatible) does not allow commands such as CONFIG to be disabled. For more information, see Commands that cannot be disabled.

Standard️️✔️

Cluster✔️

Read/write splitting✔️

Standard️️✔️

Cluster✔️

Read/write splitting✔️

Standard️️✔️

Cluster✔️

Read/write splitting✔️

Standard️️✔️

Cluster✔️

Read/write splitting✔️

Standard️️✔️

Cluster✔️

Read/write splitting✔️

#no_loose_sentinel-enabled

Specifies whether to enable the Sentinel-compatible mode for standard instances or cluster instances in direct connection mode. Valid values:

  • yes

  • no (default)

Standard️️✔️

Cluster✔️

Read/write splitting❌

Standard️️✔️

Cluster✔️

Read/write splitting❌

Standard️️✔️

Cluster✔️

Read/write splitting❌

Standard️️✔️

Cluster✔️

Read/write splitting❌

#no_loose_sentinel-password-free-access

Specifies whether to allow password-free execution of Sentinel commands when the Sentinel mode is enabled. Valid values:

  • yes: After you enable the Sentinel mode, password-free execution of Sentinel commands is allowed on any connection. You can also use the SENTINEL command to listen to the +switch-master channel.

  • no (default): shutdown.

Standard️️✔️

Cluster✔️

Read/write splitting✔️

Standard️️✔️

Cluster✔️

Read/write splitting✔️

#no_loose_sentinel-password-free-commands

After you enable the Sentinel mode and set the #no_loose_sentinel-password-free-access parameter to yes, you can use this parameter to specify an additional list of commands that can be run without requiring a password. By default, this parameter is empty.

Important
  • After you configure this parameter, you can run the specified commands without a password on any connection. Proceed with caution.

  • The commands must be written in lowercase letters. Separate multiple commands with commas (,).

Standard️️✔️

Cluster✔️

Read/write splitting✔️

Standard️️✔️

Cluster✔️

Read/write splitting✔️

#no_loose_tls-min-version

The earliest Transport Layer Security (TLS) version supported by the instance. Valid values:

  • TLSv1 (default).

  • TLSv1.1.

  • TLSv1.2.

Standard️️❌

Cluster✔️

Read/write splitting✔️

Standard️️❌

Cluster✔️

Read/write splitting✔️

Standard️️❌

Cluster✔️

Read/write splitting✔️

Standard️️❌

Cluster✔️

Read/write splitting✔️

Standard️️❌

Cluster✔️

Read/write splitting✔️

appendfsync

The frequency at which to perform the fsync operation for append-only file (AOF) persistence. The default value is everysec and cannot be changed. This parameter is available only if the appendonly parameter is set to yes.

Standard️️✔️

Cluster✔️️️️️

Read/write splitting✔️

Standard️️✔️

Cluster✔️️️️️

Read/write splitting✔️

Standard️️✔️

Cluster✔️️️️️

Read/write splitting✔️

Standard️️✔️

Cluster✔️️️️️

Read/write splitting✔️

Standard️️✔️

Cluster✔️️️️️

Read/write splitting✔️

appendonly

Specifies whether to enable AOF persistence for master nodes. Valid values:

  • yes (default)

  • no

    Note

    By default, data persistence by using Redis Database (RDB) snapshots is performed once a day. For more information, see Automatic or manual backup.

Standard️️✔️

Cluster✔️️️️️

Read/write splitting✔️

Standard️️✔️

Cluster✔️️️️️

Read/write splitting✔️

Standard️️✔️

Cluster✔️️️️️

Read/write splitting✔️

Standard️️✔️

Cluster✔️️️️️

Read/write splitting✔️

Standard️️✔️

Cluster✔️️️️️

Read/write splitting✔️

  • client-output-buffer-limit pubsub

  • client-output-buffer-limit normal

pubsub specifies the output buffer limits for publish/subscribe clients. Default value: 33554432 8388608 60.

normal specifies the output buffer limits of normal clients. Default value: 524288000 0 0.

The parameter value is specified in the following format: <hard limit> <soft limit> <soft seconds>.

  • <hard limit>: When a client's output buffer size reaches or exceeds the hard limit, the client is disconnected. The hard limit value is measured in bytes.

  • <soft limit> and <soft seconds>: A client is disconnected if its output buffer size remains larger than or equal to the soft limit value for a period of time that is longer than or equal to the soft seconds value. The soft limit value is measured in bytes. The soft seconds value is measured in seconds.

Important
  • Only instances that are compatible with Redis 6.0 or later support the client-output-buffer-limit normal parameter.

  • The client output buffer consumes random access memory. Accumulated commands in the buffer may result in data eviction from the instance or even cause the instance to run out of memory and crash. Before you modify this parameter, check the memory specifications of the instance. Exercise caution when you modify this parameter.

Standard️️✔️

Cluster✔️️️️️

Read/write splitting✔️

Standard️️✔️

Cluster✔️️️️️

Read/write splitting✔️

Standard️️✔️

Cluster✔️️️️️

Read/write splitting✔️

Standard️️✔️

Cluster✔️️️️️

Read/write splitting✔️

Standard️️✔️

Cluster✔️️️️️

Read/write splitting✔️

dynamic-hz

Specifies whether to enable dynamic frequency control for background tasks. Valid values:

  • yes (default): Enabled.

  • no: Disabled.

Standard️️✔️

Cluster✔️️️️️

Read/write splitting✔️

Standard️️✔️

Cluster✔️️️️️

Read/write splitting✔️

Standard️️✔️

Cluster✔️

Read/write splitting✔️

  • hash-max-ziplist-entries

  • hash-max-ziplist-value

The maximum number and size of key-value pairs stored in a hash. Ziplist encoding is used only if a hash meets both of the following conditions:

  • The number of key-value pairs stored in the hash is smaller than the value of the hash-max-ziplist-entries parameter.

  • The keys and values of key-value pairs stored in the hash are all smaller than the value of the hash-max-ziplist-value parameter. The keys and values are measured in bytes.

Standard️️✔️

Cluster✔️️️️️

Read/write splitting✔️

Standard️️✔️

Cluster✔️️️️️

Read/write splitting✔️

Standard️️✔️

Cluster✔️️️️️

Read/write splitting✔️

Standard️️✔️

Cluster✔️️️️️

Read/write splitting✔️

  • hash-max-listpack-entries

  • hash-max-listpack-value

Starting from Redis 7.0, listpack is used as the default hash encoding method. Listpack encoding is used only if a hash meets both of the following conditions:

  • The number of key-value pairs in the hash is less than the value of hash-max-listpack-entries.

  • The string length of each key and value in the hash is less than hash-max-listpack-value.

Standard️️✔️

Cluster✔️️️️️

Read/write splitting✔️

hz

Specifies how frequently tasks are performed in the background. For example, you can specify how frequently tasks are performed to evict expired keys. Valid values: 1 to 500. The default value is 10, which specifies that each task is performed 10 times per second.

Note

A larger value results in higher CPU consumption but allows the system to delete expired keys more frequently and close timed-out connections more precisely. We recommend that you specify a value less than or equal to 100.

Standard️️✔️

Cluster✔️️️️️

Read/write splitting✔️

Standard️️✔️

Cluster✔️️️️️

Read/write splitting✔️

Standard️️✔️

Cluster✔️️️️️

Read/write splitting✔️

Standard️️✔️

Cluster✔️️️️️

Read/write splitting✔️

Standard️️✔️

Cluster✔️️️️️

Read/write splitting✔️

latency-tracking

Specifies whether to enable tracking of per-command latencies. Valid values:

  • yes (default): Enabled.

  • no: Disabled.

Note

This parameter is available only for Redis 7.0 and later.

Standard️️✔️

Cluster✔️️️️️

Read/write splitting✔️

lazyfree-lazy-eviction

Specifies whether to enable the eviction feature based on the lazyfree mechanism. Valid values:

  • yes: Enabled.

  • no (default): Disabled.

Standard️️✔️

Cluster✔️️️️️

Read/write splitting✔️

Standard️️✔️

Cluster✔️️️️️

Read/write splitting✔️

Standard️️✔️

Cluster✔️️️️️

Read/write splitting✔️

Standard️️✔️

Cluster✔️️️️️

Read/write splitting✔️

lazyfree-lazy-expire

Specifies whether to delete expired keys based on the lazyfree mechanism. Valid values:

  • yes (default): Enabled.

  • no: Disabled.

Standard️️✔️

Cluster✔️️️️️

Read/write splitting✔️

Standard️️✔️

Cluster✔️️️️️

Read/write splitting✔️

Standard️️✔️

Cluster✔️️️️️

Read/write splitting✔️

Standard️️✔️

Cluster✔️️️️️

Read/write splitting✔️

lazyfree-lazy-server-del

Specifies whether the DEL command asynchronously deletes data based on the lazyfree mechanism. Valid values:

  • yes (default): Enabled.

  • no.

Standard️️✔️

Cluster✔️️️️️

Read/write splitting✔️

Standard️️✔️

Cluster✔️️️️️

Read/write splitting✔️

Standard️️✔️

Cluster✔️️️️️

Read/write splitting✔️

Standard️️✔️

Cluster✔️️️️️

Read/write splitting✔️

lazyfree-lazy-user-del

Specifies whether to asynchronously delete data based on the lazyfree mechanism when a user runs the DEL command. Valid values:

  • yes (default)

  • no: Disabled.

Standard️️✔️

Cluster✔️️️️️

Read/write splitting✔️

Standard️️✔️

Cluster✔️️️️️

Read/write splitting✔️

lazyfree-lazy-user-flush

Specifies whether the FLUSHDB, FLUSHALL, SCRIPT FLUSH, and FUNCTION FLUSH commands are automatically converted to Lazyfree asynchronous deletion mode. Valid values:

  • yes: Enable.

  • no (default): Disabled.

Note

This parameter is available only for Redis 7.0 and later.

Standard️️✔️

Cluster✔️️️️️

Read/write splitting✔️

list-compress-depth

The number of nodes that are not compressed at both ends of a list. Valid values: 0 to 65535.

  • 0 (default): does not compress nodes of a list.

  • A value in the range of 1 to 65535: does not compress the specified number of nodes at both ends of a list but compresses in-between nodes.

Standard️️✔️

Cluster✔️️️️️

Read/write splitting✔️

Standard️️✔️

Cluster✔️️️️️

Read/write splitting✔️

Standard️️✔️

Cluster✔️️️️️

Read/write splitting✔️

Standard️️✔️

Cluster✔️️️️️

Read/write splitting✔️

list-max-ziplist-entries

Only instances that are compatible with Redis 2.8 support these parameters. Ziplist encoding is used only if a list meets both of the following conditions:

  • The number of elements stored in the list is smaller than the value of list-max-ziplist-entries.

  • The length in bytes of each element in the list object is less than the value of list-max-ziplist-value.

Standard️️✔️

Cluster✔️️️️️

Read/write splitting✔️

list-max-ziplist-value

  • list-max-ziplist-size

  • list-max-listpack-size

For versions compatible with Redis 6.0 and earlier, the default encoding method for lists is ziplist (the list-max-ziplist-size parameter), whereas for versions compatible with Redis 7.0 and later, the default is listpack (the list-max-listpack-size parameter).

  • A positive number indicates the maximum number of elements in each ziplist (listpack) of a quicklist. For example, if you set this parameter to 5, each ziplist (listpack) of a quicklist can contain a maximum of five elements.

  • A negative number indicates the maximum size of each ziplist (listpack) of a quicklist. Valid values:

    • -5: The size of the ziplist (listpack) on each quicklist node cannot exceed 64 Kb.

    • -4: The size of each ziplist (listpack) on a quicklist node cannot exceed 32 KB.

    • -3: The size of each ziplist (listpack) of a quicklist cannot exceed 16 KB.

    • -2 (default): The size of the ziplist (listpack) on each quicklist node cannot exceed 8 KB.

    • -1: The size of the ziplist (listpack) on each quicklist node cannot exceed 4 KB.

Standard️️✔️

Cluster✔️️️️️

Read/write splitting✔️

Standard️️✔️

Cluster✔️️️️️

Read/write splitting✔️

Standard️️✔️

Cluster✔️️️️️

Read/write splitting✔️

Standard️️✔️

Cluster✔️️️️️

Read/write splitting✔️

maxmemory-policy

The policy used to evict keys if memory is exhausted. If the memory usage of your instance reaches the value of Maxmemory, data eviction is triggered. You can choose a data eviction policy based on your needs. Valid values:

Note
  • By default, Maxmemory is set to the storage capacity of the instance type and cannot be changed. For example, if the storage capacity of the instance type is 2 GB, the value of Maxmemory is 2 GB.

  • For a cluster instance, if the memory usage of a single data node reaches the value of Maxmemory, data eviction is triggered even if the total memory usage of the instance does not reach its upper limit. To address this issue, you must handle data skew for the instance. For more information, see Handle data skew.

  • LRU indicates the policy of evicting the least recently used data from the cache. LFU indicates the policy of evicting the least frequently used data from the cache. LRU, LFU, and time-to-live (TTL) policies are implemented by using approximation and randomized algorithms.

  • volatile-lru (default for Tair DRAM-based instances and Redis Open-Source Edition instances): evicts the LRU keys from keys that have a TTL configured regardless of whether the keys have expired.

  • noeviction (default for Tair persistent memory-optimized instances): does not evict keys to make space when the memory limit is reached, but returns errors for write operations.

  • volatile-lfu: evicts the LFU keys from keys that have a TTL configured.

  • volatile-random: randomly evicts keys from keys that have a TTL configured.

  • volatile-ttl: evicts the keys that have the shortest TTL from keys that have a TTL configured.

  • allkeys-lru: evicts the LRU keys from all keys.

  • allkeys-lfu: evicts the LFU keys from all keys.

  • allkeys-random: randomly evicts keys from all keys.

Standard️️✔️

Cluster✔️️️️️

Read/write splitting✔️

Standard️️✔️

Cluster✔️️️️️

Read/write splitting✔️

Standard️️✔️

Cluster✔️️️️️

Read/write splitting✔️

Standard️️✔️

Cluster✔️️️️️

Read/write splitting✔️

Standard️️✔️

Cluster✔️️️️️

Read/write splitting✔️

maxmemory-eviction-tenacity

The Eviction factor that is used to set the latency of each data eviction. Valid values: 0 to 100. Default value: 10.

  • Lowering this value reduces the latency, but compromises the validity of data eviction.

  • If large amounts of data are written, you can increase this value. In this case, the latency increases. A value of 100 indicates that the system keeps evicting data until the memory usage drops below the maxmemory limit or no keys can be evicted.

Note

This parameter is available only for Redis 7.0.

Standard️️✔️

Cluster✔️️️️️

Read/write splitting✔️

active-expire-effort

The Expire factor that is used to set the latency of each deletion of expired keys. Valid values: 1 to 10. Default value: 1. The larger the value, the faster expired keys are deleted and the more CPU resources are used.

Standard️️✔️

Cluster✔️️️️️

Read/write splitting✔️

Standard️️✔️

Cluster✔️️️️️

Read/write splitting✔️

notify-keyspace-events

The types of events of which the server can notify clients. The value of this parameter is a combination of the following characters. This parameter setting applies to all databases in the instance. These notifications consume CPU resources. For more information, see Redis keyspace notifications.

  • K: keyspace events. All events are published with a _keyspace@<db>_ prefix.

  • E: keyevent events. All events are published with a _keyevent@<db>_ prefix.

  • g: generic events that are not related to specific commands, such as DEL, EXPIRE, and RENAME.

  • $: events of string commands. Clients are notified of operations to create, modify, and delete strings.

  • l: events of list commands.

  • s: events of set commands.

  • h: events of hash commands.

  • z: events of sorted set commands.

  • x: expiration events. Clients may be notified when an expired key is deleted instead of when a key expires.

  • e: eviction events. Clients are notified when a key is evicted based on maxmemory policies.

  • A: all the preceding event types. This parameter is the alias for the g$lshzxe parameter. Example: AKE.

Important

The specified value must include at least K or E. Otherwise, no notifications are sent.

For example, if you want to be notified of expiration events, set this parameter to Ex. If you run the PSUBSCRIBE _keyevent@0_* command on your client after you specify this parameter, you are notified of the keyevent events of DB0.

Standard️️✔️

Cluster✔️️️️️

Read/write splitting✔️

Standard️️✔️

Cluster✔️️️️️

Read/write splitting✔️

Standard️️✔️

Cluster✔️️️️️

Read/write splitting✔️

Standard️️✔️

Cluster✔️️️️️

Read/write splitting✔️

Standard️️✔️

Cluster✔️️️️️

Read/write splitting✔️

set-max-intset-entries

Specifies the maximum number of data entries for which a set supports intset encoding. A set uses intset encoding when the following conditions are met:

  • All data entries in the set are strings.

  • The set contains only radix-10 integers in the range of 64-bit signed integers.

Standard️️✔️

Cluster✔️️️️️

Read/write splitting✔️

Standard️️✔️

Cluster✔️️️️️

Read/write splitting✔️

Standard️️✔️

Cluster✔️️️️️

Read/write splitting✔️

Standard️️✔️

Cluster✔️️️️️

Read/write splitting✔️

Standard️️✔️

Cluster✔️️️️️

Read/write splitting✔️

slowlog-log-slower-than

The threshold for logging slow queries. When an operation is executed for a period of time that exceeds the specified threshold, the operation is logged. Unit: microseconds (μs). Default value: 20000 (20 milliseconds). Valid values: 10000 to 10000000.

Standard️️✔️

Cluster✔️️️️️

Read/write splitting✔️

Standard️️✔️

Cluster✔️️️️️

Read/write splitting✔️

Standard️️✔️

Cluster✔️️️️️

Read/write splitting✔️

Standard️️✔️

Cluster✔️️️️️

Read/write splitting✔️

Standard️️✔️

Cluster✔️️️️️

Read/write splitting✔️

slowlog-max-len

The maximum number of entries that can be stored in a slow query log. Valid values: 100 to 10000. Default value: 1024.

Standard️️✔️

Cluster✔️️️️️

Read/write splitting✔️

Standard️️✔️

Cluster✔️️️️️

Read/write splitting✔️

Standard️️✔️

Cluster✔️️️️️

Read/write splitting✔️

Standard️️✔️

Cluster✔️️️️️

Read/write splitting✔️

Standard️️✔️

Cluster✔️️️️️

Read/write splitting✔️

stream-node-max-bytes

The maximum amount of memory that each macro node in a stream can consume. Valid values: 0 to 999,999,999,999,999.

Note

A value of 0 indicates no limit.

Standard️️✔️

Cluster✔️️️️️

Read/write splitting✔️

Standard️️✔️

Cluster✔️️️️️

Read/write splitting✔️

Standard️️✔️

Cluster✔️

Read/write splitting✔️

stream-node-max-entries

Specifies the maximum number of entries that can be stored on each macro node in a stream. Valid values: 0 to 999,999,999,999,999.

Note

A value of 0 indicates no limit.

Standard️️✔️

Cluster✔️️️️️

Read/write splitting✔️

Standard️️✔️

Cluster✔️️️️️

Read/write splitting✔️

Standard️️✔️

Cluster✔️

Read/write splitting✔️

tracking-table-max-keys

The maximum number of keys that can be stored in the tracking table. Valid values: 0 to 1000000000. Default value: 1000000.

Note

This parameter is available only for Redis 7.0.

Standard️️✔️

Cluster✔️️️️️

Read/write splitting✔️

timeout

The timeout period. The system closes a connection to a client for the instance if the connection remains idle for the specified period of time. Valid values: 0 to 100000. Unit: seconds. The default value is 0, which indicates that no timeout period is specified.

Standard️️✔️

Cluster✔️️️️️

Read/write splitting✔️

Standard️️✔️

Cluster✔️️️️️

Read/write splitting✔️

Standard️️✔️

Cluster✔️️️️️

Read/write splitting✔️

Standard️️✔️

Cluster✔️️️️️

Read/write splitting✔️

  • zset-max-ziplist-entries

  • zset-max-ziplist-value

The maximum number and size of key-value pairs stored in a sorted set. Ziplist encoding is used only if a sorted set meets both of the following conditions:

  • The keys and values of key-value pairs stored in the sorted set are all smaller than the value of the zset-max-ziplist-value parameter. The keys and values are measured in bytes.

  • The number of key-value pairs stored in the sorted set is smaller than the value of the zset-max-ziplist-entries parameter.

Standard️️✔️

Cluster✔️️️️️

Read/write splitting✔️

Standard️️✔️

Cluster✔️️️️️

Read/write splitting✔️

Standard️️✔️

Cluster✔️️️️️

Read/write splitting✔️

Standard️️✔️

Cluster✔️️️️️

Read/write splitting✔️

  • zset-max-listpack-entries

  • zset-max-listpack-value

Starting from Redis 7.0, listpack is used as the default sorted set encoding method. Listpack encoding is used only if a sorted set meets both of the following conditions:

  • The number of key-value pairs stored in the Zset is smaller than the value of the zset-max-listpack-entries parameter.

  • The string length of each member in the Zset is less than zset-max-listpack-value.

Standard️️✔️

Cluster✔️️️️️

Read/write splitting✔️

bigkey-threshold

The threshold for the number of elements in a large key (a key with many elements) for Top Key statistics. Default value: 2000. Valid values: 500 to 100000.

Note

If this parameter is not displayed, update the minor version and retry.

Standard️️✔️

Cluster✔️️️️️

Read/write splitting✔️

Standard️️✔️

Cluster✔️️️️️

Read/write splitting✔️

Standard️️✔️

Cluster✔️️️️️

Read/write splitting✔️

Proxy node parameters

The parameters provided by proxy nodes are supported only by cluster instances in proxy mode and read/write splitting instances.

Parameter

Description

cluster_compat_enable

Specifies whether to enable compatibility with native Redis cluster syntax. Valid values:

  • 0: disables compatibility.

  • 1 (default): Enabled. After this feature is enabled, the READONLY, READWRITE, and CLUSTER commands are supported. For the specific commands, see List of commands supported in proxy mode.

hello_enabled

Specifies whether to enable the switch between RESP2 and RESP3 protocols by using the HELLO command. Valid values:

  • 0 (default): disables the switch.

  • 1: enables the switch. After the switch is enabled, you can use the HELLO command to switch between RESP2 and RESP3 protocols.

Note

This parameter is available only for proxy nodes whose minor version is 7.0.9 or later.

max_session_processing

The maximum number of pending requests allowed for a single connection. Valid values: 10 to 10000000. Default value: 1000.

If a proxy node forwards requests from a client to a data node but does not receive a response from the data node, these requests are pending. This parameter is used to prevent pending requests that are caused by capability differences between the frontend and backend of proxy nodes. This prevents an increase in memory usage.

  • #no_loose_statistics-ip-enable

  • #no_loose_statistics-cmds

  • #no_loose_statistics-keys

These parameters are part of the observability feature and take effect only after you enable the Audit Log feature. Statistics are collected at an interval of 5 seconds.

  • #no_loose_statistics-ip-enable: Specifies whether to enable statistics collection for IP addresses, which records the IP addresses of established connections. Valid values: yes (enabled) and no (default, disabled).

  • #no_loose_statistics-cmds: Specifies the commands for which to collect statistics on the source IP address and frequency. The default value is empty, which means no statistics are collected. Separate multiple commands with commas (,).

  • #no_loose_statistics-keys: Specifies the keys for which to collect statistics on their source IP addresses and frequency. This parameter is empty by default, which means no statistics are collected. Separate multiple keys with commas (,).

Note
  • To prevent performance degradation, do not specify an excessive number of commands for the #no_loose_statistics-cmds parameter and an excessive number of keys for the #no_loose_statistics-keys parameter. Enable these parameters only for troubleshooting or O&M tasks.

  • You can download audit logs from the Simple Log Service console (for download instructions, see Download audit logs), and then use keywords to filter for the information that you need:

    • A type value of 7: indicates the queries per second (QPS) of IP addresses.

    • A type value of 8: indicates the connection statistics of IP addresses.

    • A type value of 9: indicates the statistics of keys.

    • A type value of 10: indicates the statistics of commands.

ptod_enabled

Specifies whether to pass the client IP address to the data node. Valid values:

  • 0: The client IP address is not passed to the data node. The IP address that accesses the data node is the IP address of the proxy node.

  • 1 (default): The client IP address is passed to the data node.

readonly_lua_route_ronode_enable

Specifies whether to enable the Lua execution mode for read-only replicas. Valid values:

  • 0 (default): disables the Lua execution mode. Read-only replicas do not support Lua. Lua commands are processed by the primary node.

  • 1: enables the Lua execution mode. Lua commands that contain only read operations are forwarded to read-only replicas for processing.

read_request_only_ronode_whenrwsplit_enable

Specifies whether to enable directed forwarding of requests from read-only accounts. Valid values:

  • 0 (default): disables directed forwarding. Requests from read-only accounts are distributed to all nodes, including the primary node, based on weights.

  • 1: enables directed forwarding. Requests from read-only accounts are forwarded only to read-only replicas, not to the primary node.

rt_threshold_ms

The threshold for slow logs in proxy nodes. Unit: milliseconds (ms). Valid values: 30 to 2000. Default value: 500.

Note

If the time that elapses from when a proxy node sends a request to a data node to when the proxy node receives a response exceeds the threshold, a slow log is generated.

script_check_enable

Specifies whether to enable or disable checks for Lua scripts on proxy nodes. For details about the check items, see Proxy check items for Lua. Valid values:

  • 0: disables the check. If the database account of the instance has read-only permissions, the system still performs the check.

  • 1 (default): enables the check.

sentinel_compat_enable

Specifies whether to enable the Sentinel-compatible mode for cluster instances in proxy mode or read/write splitting instances. Valid values:

  • 1: enables the Sentinel-compatible mode.

  • 0 (default): disables the Sentinel-compatible mode.

transfer_subscrible_to_psubscrible_enable

Specifies whether to enable the feature that converts SUBSCRIBE to PSUBSCRIBE. Valid values:

  • 0 (default): disables the conversion.

  • 1: Enables the feature. The proxy node converts SUBSCRIBE to PSUBSCRIBE.

    Note

    If you use Pub/Sub commands in Lua scripts and the channel to which you have subscribed cannot receive messages, you can enable this feature to fix this issue.