| 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 forXmilliseconds before reconnecting.(retries: number, cause: Error) => false | number | Error->numberis the same as configuring anumberdirectly,Erroris 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: '...'
}
});