2.0.7 • Published 10 years ago

connect-redis-pubsub v2.0.7

Weekly downloads
12
License
-
Repository
github
Last release
10 years ago

Connect Redis PubSub

connect-redis-pubsub is a Redis session store based on connect-redis backed by node_redis. Requires redis >= 2.0.0 for the SETEX command.

This module has the ability to subscribe to session changes based on the sid of a session. Anytime a session is modified, it will publish to the session's channel, and any client subscribed to that session, will receive the updated session information.

Installation

  $ npm install connect-redis-pubsub

Options

  • client An existing redis client object you normally get from redis.createClient()
  • subClient An existing redis client object that is going to ONLY be used for subscriptions
  • host Redis server hostname
  • port Redis server portno
  • ttl Redis session TTL in seconds
  • db Database index to use
  • pass Password for Redis authentication
  • prefix Key prefix defaulting to "sess:"
  • ... Remaining options passed to the redis createClient() method.

Usage

var connect = require('connect'), 
  RedisStore = require('connect-redis-pubsub')(connect);

connect()
  .use(connect.session({ store: new RedisStore(options), secret: 'disco cat' }))

Subscribing:

RedisStore.subscribe(sid, callback)

Unsubscribing:

RedisStore.unsubscribe(sid, callback)

Known Issues

  • The session object seems to be getting set multiple times - causing multiple publishes - looking for a way to mitigate this.

Future Plans

  • Allow for one-time subscriptions (immediately unsubscribe once a the callback has been processed)
  • Integrate the subscription model right on the session objects stored within request with proper EventEmitter functionality
  • Write some tests for the pubsub

License

MIT

2.0.7

10 years ago

2.0.6

11 years ago

2.0.5

11 years ago

2.0.4

11 years ago

2.0.2

11 years ago

2.0.0

11 years ago