function-bus-redis

1.0.2 • Public • Published

function-bus-redis

An object storing functions by key. These can be then executed grouped by key.

Useful to coordinate execution across different processes.

Uses Redis pub/sub.

var FunctionBus = require('function-bus-redis');
var functionBus = new FunctionBus();
 
// queue functions by key
functionBus.queue('a', func1);
functionBus.queue('a', func2);
functionBus.queue('b', func3);
 
// number of functions queued by key
functionBus.len('a'); // 2
functionBus.len('b'); // 1
functionBus.len('c'); // 0
 
// execute the 2 functions with key "a"
// passing 3 arguments: 1, 2, 3
functionBus.execute('a', [1, 2, 3]);

It works also across different processes connected to the same redis.

Options:

  • serialize [optional]: function used to serialize the values when they are sent to redis
  • deserialize [optional]: function used to deserialize the values when they are received from redis
  • channelPrefix [optional]: the prefix used for redis pub/sub
  • redisConfig [optional]: node-redis configuration
  • pub/sub [optional]: redisClients (2 different!). If they are not passed they are created using redisConfig.

Readme

Keywords

Package Sidebar

Install

npm i function-bus-redis

Weekly Downloads

1

Version

1.0.2

License

MIT

Unpacked Size

7.43 kB

Total Files

7

Last publish

Collaborators

  • sithmel