@mimik/rediser
v2.2.1
Published
Redis connection helper for mimik microservices
Readme
rediser
Example
import rediser from '@mimik/rediser';- rediser
- module.exports(set, config) ⇒ object ⏏
- async
- ~validate() ⇒ Promise
- sync
- ~initializeSync() ⇒ object | null
- async
- module.exports(set, config) ⇒ object ⏏
module.exports(set, config) ⇒ object ⏏
Creates a Redis connection manager.
Side effect: the factory immediately opens a connection by calling initializeSync before returning.
Kind: Exported function
Returns: object - An object with initializeSync and validate methods.
| Param | Type | Description |
| --- | --- | --- |
| set | string | Whether redis is enabled ('on' or 'off'). |
| config | object | The application configuration object. |
| config.nodeEnvironment | string | The deployment environment; in production the logged settings are masked. |
| config.redisSettings | object | Redis-specific settings. |
| config.redisSettings.url | string | Connection URL for standard (non-cluster) mode. |
| config.redisSettings.connectTimeout | number | Connection timeout in SECONDS. |
| config.redisSettings.validationCheck | number | Validation poll interval in MILLISECONDS. |
| config.redisSettings.options | object | Extra options forwarded to redis.createClient. |
| config.redisSettings.cluster | object | Cluster configuration. |
| config.redisSettings.cluster.set | string | Whether cluster mode is enabled ('on' or 'off'). |
| config.redisSettings.cluster.useReplicas | string | Whether to read from replicas ('on' or 'off'). |
| config.redisSettings.cluster.minimizeConnections | string | Whether to minimize connections ('on' or 'off'). |
| config.redisSettings.domain | string | Comma-separated host:port list of cluster root nodes. |
| config.redisSettings.username | string | Optional username for authentication. |
| config.redisSettings.password | string | Optional password for authentication. |
module.exports~validate() ⇒ Promise
Database connection validation.
Kind: inner method of module.exports
Returns: Promise - Resolves with null on success.
Category: async
Throws:
- Error Will throw an error if the database connection is not
connectedand is notdisconnected.
Will exit 1 if the connection request times out and the connection state is not connected.
Requires: module:@mimik/sumologic-winston-logger
Fulfil: null Return null.
module.exports~initializeSync() ⇒ object | null
Database initialization.
Side effect: registers a disconnect handler whose timeout can exit the process via logger.flushAndExit if the connection is not established within connectTimeout.
Kind: inner method of module.exports
Returns: object | null - The database client, or null if cache is not enabled.
Category: sync
Requires: module:@mimik/sumologic-winston-logger
