node-redis-pool
==========================

A node.js connection pool for Redis.


## About
  node-redis-pool is high-level redis management object. It manages
a number of connections in a pool, using them as needed and keeping all aspects
of releasing active connections internal to the object, so the user does not
need to worry about forgotten connections leaking memory and building up over
time.

## Installation

```javascript
npm install node-redis-pool
```

## Usage

```javascript
var redisPool = require('node-redis-pool')('myRedisPool',{
    host: '127.0.0.1', //default
    port: 6379, //default
    max_clients: 30, //defalut
    perform_checks: false, //checks for needed push/pop functionality
    options: {
      auth_pass: 'password'
    } //options for createClient of node-redis, optional
  });

redisPool.set('test-key', 'foobar', function (err) {
  redisPool.get('test-key', function (err, reply) {
    console.log(reply); // 'foobar'
  });
});
```

## Implemented methods

  * **get**
```javascript
get(key, cb)
```

  * **incr**
```javascript
incr(key, cb)
```


  * **set**
```javascript
set(key, value, expx, ttl, nxxx, cb)
```

  * **expire**
```javascript
expire(key, seconds, cb)
```

  * **hget**
```javascript
hget(key, field, cb)
```

  * **hgetall**
```javascript
hgetall(key, cb)
```

  * **hset**
```javascript
hset(key, field, value, cb)
```

  * **brpop**
```javascript
brpop(key, cb)
```

  * **blpop**
```javascript
blpop(key, cb)
```

  * **rpush**
```javascript
rpush(key, value, cb)
```

  * **lpush**
```javascript
lpush(key, value, cb)
```


## API Documentation
node-redis-pool uses NaturalDocs to generate API documentation, which can be viewed after cloning the repository, in the doc/ directory, using a web browser.


## License

[MIT](https://github.com/silverbucket/node-redis-connection-pool/blob/master/LICENSE)



