Skip to content

GramIO API Reference / storage-redis/ioredis / RedisStorageOptions

Interface: RedisStorageOptions

Defined in: storage-redis/ioredis.d.ts:4

Extends

  • RedisOptions

Properties

PropertyTypeDescriptionInherited fromDefined in
$ttl?numbertime to live in seconds-storage-redis/ioredis.d.ts:6
autoPipeliningIgnoredCommands?string[]Default []RedisOptions.autoPipeliningIgnoredCommandsioredis/built/redis/RedisOptions.d.ts:156
autoResendUnfulfilledCommands?booleanWhether or not to resend unfulfilled commands on reconnect. Unfulfilled commands are most likely to be blocking commands such as brpop or blpop. Default trueRedisOptions.autoResendUnfulfilledCommandsioredis/built/redis/RedisOptions.d.ts:89
autoResubscribe?booleanWhen the client reconnects, channels subscribed in the previous connection will be resubscribed automatically if autoResubscribe is true. Default trueRedisOptions.autoResubscribeioredis/built/redis/RedisOptions.d.ts:83
blockingTimeout?numberEnables client-side timeout protection for blocking commands when set to a positive number. If blockingTimeout is undefined, 0, or negative (e.g. -1), the protection is disabled and no client-side timers are installed for blocking commands.RedisOptions.blockingTimeoutioredis/built/redis/RedisOptions.d.ts:20
blockingTimeoutGrace?numberGrace period (ms) added to blocking command timeouts. Only used when blockingTimeout is a positive number. Defaults to 100ms.RedisOptions.blockingTimeoutGraceioredis/built/redis/RedisOptions.d.ts:25
clientInfoTag?stringTag to append to the library name in CLIENT SETINFO (ioredis(tag)). Link https://redis.io/docs/latest/commands/client-setinfo/ Default undefinedRedisOptions.clientInfoTagioredis/built/redis/RedisOptions.d.ts:62
commandQueue?boolean-RedisOptions.commandQueueioredis/built/redis/RedisOptions.d.ts:158
commandTimeout?numberIf a command does not return a reply within a set number of milliseconds, a "Command timed out" error will be thrown.RedisOptions.commandTimeoutioredis/built/redis/RedisOptions.d.ts:13
connectionName?stringSet the name of the connection to make it easier to identity the connection in client list. Link https://redis.io/commands/client-setnameRedisOptions.connectionNameioredis/built/redis/RedisOptions.d.ts:50
Connector?ConnectorConstructor-RedisOptions.Connectorioredis/built/redis/RedisOptions.d.ts:7
connectTimeout?numberHow long the client will wait before killing a socket due to inactivity during initial connection. Default 10000RedisOptions.connectTimeoutioredis/built/redis/RedisOptions.d.ts:126
db?numberDatabase index to use. Default 0RedisOptions.dbioredis/built/redis/RedisOptions.d.ts:77
disableClientInfo?booleanIf true, skips setting library info via CLIENT SETINFO. Link https://redis.io/docs/latest/commands/client-setinfo/ Default falseRedisOptions.disableClientInfoioredis/built/redis/RedisOptions.d.ts:56
disconnectTimeout?number-RedisOptions.disconnectTimeoutioredis/built/connectors/SentinelConnector/index.d.ts:41
enableAutoPipelining?booleanDefault falseRedisOptions.enableAutoPipeliningioredis/built/redis/RedisOptions.d.ts:152
enableOfflineQueue?booleanBy default, if the connection to Redis server has not been established, commands are added to a queue and are executed once the connection is "ready" (when enableReadyCheck is true, "ready" means the Redis server has loaded the database from disk, otherwise means the connection to the Redis server has been established). If this option is false, when execute the command when the connection isn't ready, an error will be returned. Default trueRedisOptions.enableOfflineQueueioredis/built/redis/RedisOptions.d.ts:169
enableReadyCheck?booleanThe client will sent an INFO command to check whether the server is still loading data from the disk ( which happens when the server is just launched) when the connection is established, and only wait until the loading process is finished before emitting the ready event. Default trueRedisOptions.enableReadyCheckioredis/built/redis/RedisOptions.d.ts:177
enableTLSForSentinelMode?boolean-RedisOptions.enableTLSForSentinelModeioredis/built/connectors/SentinelConnector/index.d.ts:43
failoverDetector?boolean-RedisOptions.failoverDetectorioredis/built/connectors/SentinelConnector/index.d.ts:51
family?number-RedisOptions.family@types/node/net.d.ts:53
host?string-RedisOptions.host@types/node/net.d.ts:49
keepAlive?numberEnable/disable keep-alive functionality. Link https://nodejs.org/api/net.html#socketsetkeepaliveenable-initialdelay Default 0RedisOptions.keepAliveioredis/built/redis/RedisOptions.d.ts:38
keyPrefix?string-RedisOptions.keyPrefixioredis/built/utils/Commander.d.ts:5
lazyConnect?booleanWhen a Redis instance is initialized, a connection to the server is immediately established. Set this to true will delay the connection to the server until the first command is sent or redis.connect() is called explicitly. When redis.connect() is called explicitly, a Promise is returned, which will be resolved when the connection is ready or rejected when it fails. The rejection should be handled by the user. Default falseRedisOptions.lazyConnectioredis/built/redis/RedisOptions.d.ts:186
maxLoadingRetryTime?numberDefault 10000RedisOptions.maxLoadingRetryTimeioredis/built/redis/RedisOptions.d.ts:148
maxRetriesPerRequest?numberThe commands that don't get a reply due to the connection to the server is lost are put into a queue and will be resent on reconnect (if allowed by the retryStrategy option). This option is used to configure how many reconnection attempts should be allowed before the queue is flushed with a MaxRetriesPerRequestError error. Set this options to null instead of a number to let commands wait forever until the connection is alive again. Default 20RedisOptions.maxRetriesPerRequestioredis/built/redis/RedisOptions.d.ts:144
monitor?booleanThis option is used internally when you call redis.monitor() to tell Redis to enter the monitor mode when the connection is established. Default falseRedisOptions.monitorioredis/built/redis/RedisOptions.d.ts:133
name?stringMaster group name of the SentinelRedisOptions.nameioredis/built/connectors/SentinelConnector/index.d.ts:28
natMap?NatMap-RedisOptions.natMapioredis/built/connectors/SentinelConnector/index.d.ts:45
noDelay?booleanEnable/disable the use of Nagle's algorithm. Link https://nodejs.org/api/net.html#socketsetnodelaynodelay Default trueRedisOptions.noDelayioredis/built/redis/RedisOptions.d.ts:44
offlineQueue?boolean-RedisOptions.offlineQueueioredis/built/redis/RedisOptions.d.ts:157
password?stringIf set, client will send AUTH command with the value of this option when connected.RedisOptions.passwordioredis/built/redis/RedisOptions.d.ts:71
path?string-RedisOptions.path@types/node/net.d.ts:69
port?number-RedisOptions.port@types/node/net.d.ts:48
preferredSlaves?PreferredSlaves-RedisOptions.preferredSlavesioredis/built/connectors/SentinelConnector/index.d.ts:39
readOnly?booleanDefault falseRedisOptions.readOnlyioredis/built/redis/RedisOptions.d.ts:115
reconnectOnError?ReconnectOnErrorWhether or not to reconnect on certain Redis errors. This options by default is null, which means it should never reconnect on Redis errors. You can pass a function that accepts an Redis error, and returns: - true or 1 to trigger a reconnection. - false or 0 to not reconnect. - 2 to reconnect and resend the failed command (who triggered the error) after reconnection. Example const redis = new Redis({ reconnectOnError(err) { const targetError = "READONLY"; if (err.message.includes(targetError)) { // Only reconnect when the error contains "READONLY" return true; // or return 1; } }, }); Default nullRedisOptions.reconnectOnErrorioredis/built/redis/RedisOptions.d.ts:111
retryStrategy?(times) => number | void-RedisOptions.retryStrategyioredis/built/redis/RedisOptions.d.ts:8
role?"master" | "slave"Default "master"RedisOptions.roleioredis/built/connectors/SentinelConnector/index.d.ts:32
scripts?Record<string, { lua: string; numberOfKeys?: number; readOnly?: boolean; }>Default undefinedRedisOptions.scriptsioredis/built/redis/RedisOptions.d.ts:190
sentinelCommandTimeout?number-RedisOptions.sentinelCommandTimeoutioredis/built/connectors/SentinelConnector/index.d.ts:42
sentinelMaxConnections?numberDefault 10RedisOptions.sentinelMaxConnectionsioredis/built/connectors/SentinelConnector/index.d.ts:50
sentinelPassword?string-RedisOptions.sentinelPasswordioredis/built/connectors/SentinelConnector/index.d.ts:35
sentinelReconnectStrategy?(retryAttempts) => number | void-RedisOptions.sentinelReconnectStrategyioredis/built/connectors/SentinelConnector/index.d.ts:38
sentinelRetryStrategy?(retryAttempts) => number | void-RedisOptions.sentinelRetryStrategyioredis/built/connectors/SentinelConnector/index.d.ts:37
sentinels?Partial<SentinelAddress>[]-RedisOptions.sentinelsioredis/built/connectors/SentinelConnector/index.d.ts:36
sentinelTLS?ConnectionOptions-RedisOptions.sentinelTLSioredis/built/connectors/SentinelConnector/index.d.ts:44
sentinelUsername?string-RedisOptions.sentinelUsernameioredis/built/connectors/SentinelConnector/index.d.ts:34
showFriendlyErrorStack?boolean-RedisOptions.showFriendlyErrorStackioredis/built/utils/Commander.d.ts:6
socketTimeout?numberIf the socket does not receive data within a set number of milliseconds: 1. the socket is considered "dead" and will be destroyed 2. the client will reject any running commands (altought they might have been processed by the server) 3. the reconnect strategy will kick in (depending on the configuration)RedisOptions.socketTimeoutioredis/built/redis/RedisOptions.d.ts:32
stringNumbers?booleanWhen enabled, numbers returned by Redis will be converted to JavaScript strings instead of numbers. This is necessary if you want to handle big numbers (above Number.MAX_SAFE_INTEGER === 2^53). Default falseRedisOptions.stringNumbersioredis/built/redis/RedisOptions.d.ts:121
tls?ConnectionOptions-RedisOptions.tlsioredis/built/connectors/SentinelConnector/index.d.ts:33
updateSentinels?boolean-RedisOptions.updateSentinelsioredis/built/connectors/SentinelConnector/index.d.ts:46
username?stringIf set, client will send AUTH command with the value of this option as the first argument when connected. This is supported since Redis 6.RedisOptions.usernameioredis/built/redis/RedisOptions.d.ts:67