Property | Default | Description |
---|---|---|
url | redis[s]://[[username][:password]@][host][:port][/db-number] (see redis and rediss IANA registration for more details) |
|
socket | Socket connection properties. Unlisted net.connect properties (and tls.connect ) are also supported |
|
socket.port | 6379 |
Redis server port |
socket.host | 'localhost' |
Redis server hostname |
socket.family | 0 |
IP Stack version (one of 4 | 6 | 0 ) |
socket.path | Path to the UNIX Socket | |
socket.connectTimeout | 5000 |
Connection Timeout (in milliseconds) |
socket.noDelay | true |
Toggle Nagle's algorithm |
socket.keepAlive | 5000 |
Toggle keep-alive functionality |
socket.tls | See explanation and examples below | |
socket.reconnectStrategy | retries => Math.min(retries * 50, 500) |
A function containing the Reconnect Strategy logic |
username | ACL username (see ACL guide) | |
password | ACL password or the old "--requirepass" password | |
name | Client name (see CLIENT SETNAME ) |
|
database | Redis database number (see SELECT command) |
|
modules | Included Redis Modules | |
scripts | Script definitions (see Lua Scripts) | |
functions | Function definitions (see Functions) | |
commandsQueueMaxLength | Maximum length of the client's internal command queue | |
disableOfflineQueue | false |
Disables offline queuing, see FAQ |
readonly | false |
Connect in READONLY mode |
legacyMode | false |
Maintain some backwards compatibility (see the Migration Guide) |
isolationPoolOptions | See the Isolated Execution Guide | |
pingInterval | Send PING command at interval (in ms). Useful with "Azure Cache for Redis" |
When the socket closes unexpectedly (without calling .quit()
/.disconnect()
), the client uses reconnectStrategy
to decide what to do. The following values are supported:
false
-> do not reconnect, close the client and flush the command queue.number
-> wait forX
milliseconds before reconnecting.(retries: number, cause: Error) => false | number | Error
->number
is the same as configuring anumber
directly,Error
is the same asfalse
, but with a custom error.
By default the strategy is Math.min(retries * 50, 500)
, but it can be overwritten like so:
createClient({
socket: {
reconnectStrategy: retries => Math.min(retries * 50, 1000)
}
});
To enable TLS, set socket.tls
to true
. Below are some basic examples.
For configuration options see tls.connect and tls.createSecureContext, as those are the underlying functions used by this library.
createClient({
socket: {
tls: true,
ca: '...',
cert: '...'
}
});
createClient({
socket: {
tls: true,
rejectUnauthorized: false,
cert: '...'
}
});