merapi-plugin-redis
v0.2.1
Published
Merapi plugin for working with ioredis
Downloads
3
Readme
Merapi Plugin Redis
Introduction
Merapi plugin for working with ioredis.
Quick Start
Installation
npm install merapi-plugin-redis --save
Configuration
{
"name": "merapi",
"version": "0.1.0",
"plugins": [
"redis"
],
"components": {
"redisPub": {
"type": "redis",
"config": "redisConfig"
},
"redisSub": {
"type": "redis",
"config": "redisConfig"
}
},
"redisConfig": {
"type": "single",
"prefix": "merapi",
"host": "127.0.0.1",
"port": "6379",
"password": "mypassword",
"ttl": "300",
"redisHosts": "[{\"host\": \"127.0.0.1\", \"port\": 6379},{\"host\": \"127.0.0.1\", \"port\": \"16379\"}]",
"sentinelName": "mymaster",
"args": {}
}
}
The arguments passed to the redis configuration are different from one another, where:
type
identifies redis type (single
,cluster
, orsentinel
)prefix
prefix for redis key (key will be{prefix}:yourkey
)host
redis hostport
redis portpassword
redis authttl
default value for ttlredisHosts
(optional) fill this field if you wish to use more than one host. Fill this field in string formatsentinelName
(optional) name for sentinel masterargs
(optional) used as second argument incluster
configuration
Standard Configuration
Example of redis configuration.
{
"type": "single",
"prefix": "merapi",
"host": "127.0.0.1",
"port": 6380,
"password": "mypassword"
}
More information about redis configuration
Cluster Configuration
{
"type": "cluster",
"prefix": "merapi",
"password": "mypassword",
"redisHosts": "[{\"host\": \"127.0.0.1\", \"port\": 6379},{\"host\": \"127.0.0.1\", \"port\": 16379}]",
"args": {
"slotsRefreshTimeout": 2000
}
}
More information about cluster configuration
Sentinel Configuration
{
"type": "sentinel",
"prefix": "merapi",
"host": "localhost",
"port": "26379",
"sentinelName": "mymaster",
"password": "mypassword"
}
More information about sentinel configuration
Usage
You can call redis client by using client
function:
import { IRedis } from "merapi-plugin-redis";
export default class YourManager {
constructor(protected redisRepo: IRedis) {
super();
}
getRedisClient() {
const redisClient = this.redisRepo.client();
return redisClient;
}
}
Then you can proceed to use ioredis from redisClient
.
License
MIT