.. _envoy_api_file_envoy/config/filter/network/redis_proxy/v2/redis_proxy.proto: Redis Proxy =========== Redis Proxy :ref:`configuration overview `. .. _envoy_api_msg_config.filter.network.redis_proxy.v2.RedisProxy: config.filter.network.redis_proxy.v2.RedisProxy ----------------------------------------------- `[config.filter.network.redis_proxy.v2.RedisProxy proto] `_ .. code-block:: json { "stat_prefix": "...", "cluster": "...", "settings": "{...}", "latency_in_micros": "..." } .. _envoy_api_field_config.filter.network.redis_proxy.v2.RedisProxy.stat_prefix: stat_prefix (`string `_, *REQUIRED*) The prefix to use when emitting :ref:`statistics `. .. _envoy_api_field_config.filter.network.redis_proxy.v2.RedisProxy.cluster: cluster (`string `_, *REQUIRED*) Name of cluster from cluster manager. See the :ref:`configuration section ` of the architecture overview for recommendations on configuring the backing cluster. .. _envoy_api_field_config.filter.network.redis_proxy.v2.RedisProxy.settings: settings (:ref:`config.filter.network.redis_proxy.v2.RedisProxy.ConnPoolSettings `, *REQUIRED*) Network settings for the connection pool to the upstream cluster. .. _envoy_api_field_config.filter.network.redis_proxy.v2.RedisProxy.latency_in_micros: latency_in_micros (`bool `_) Indicates that latency stat should be computed in microseconds. By default it is computed in milliseconds. .. _envoy_api_msg_config.filter.network.redis_proxy.v2.RedisProxy.ConnPoolSettings: config.filter.network.redis_proxy.v2.RedisProxy.ConnPoolSettings ---------------------------------------------------------------- `[config.filter.network.redis_proxy.v2.RedisProxy.ConnPoolSettings proto] `_ Redis connection pool settings. .. code-block:: json { "op_timeout": "{...}", "enable_hashtagging": "..." } .. _envoy_api_field_config.filter.network.redis_proxy.v2.RedisProxy.ConnPoolSettings.op_timeout: op_timeout (`Duration `_) Per-operation timeout in milliseconds. The timer starts when the first command of a pipeline is written to the backend connection. Each response received from Redis resets the timer since it signifies that the next command is being processed by the backend. The only exception to this behavior is when a connection to a backend is not yet established. In that case, the connect timeout on the cluster will govern the timeout until the connection is ready. .. _envoy_api_field_config.filter.network.redis_proxy.v2.RedisProxy.ConnPoolSettings.enable_hashtagging: enable_hashtagging (`bool `_) Use hash tagging on every redis key to guarantee that keys with the same hash tag will be forwarded to the same upstream. The hash key used for determining the upstream in a consistent hash ring configuration will be computed from the hash tagged key instead of the whole key. The algorithm used to compute the hash tag is identical to the `redis-cluster implementation `_. Examples: * '{user1000}.following' and '{user1000}.followers' **will** be sent to the same upstream * '{user1000}.following' and '{user1001}.following' **might** be sent to the same upstream