var zmq = require('zmq'), _ = require('lodash'), busybee = require('busybee'); busybee.init({ name : 'service_1' }); /** busybee dependent */ var conf = busybee.conf, log = busybee.logger; new busybee.cluster(conf) .master(function () { /** register the service */ busybee.locator.register(conf.app.name, conf.sockets.service); var conn = new busybee.connection.broker(conf.sockets.broker.front, conf.sockets.broker.back, conf.app.name); }) .worker(function () { var reqHandler = function(err, req) { if (err) return log.error(err); log.info('msg recieved: ' + req); var res = new Object(); res.data = 'service_1 data on process: ' + process.pid + ' (node) with payload ' + req; return res; } var conn = new busybee.connection.worker(conf.sockets.worker, reqHandler); });
/** * apidemo * * @author Simon Townsend <*****@*****.**> */ var versions = require('./lib/versions'), zmq = require('zmq'), _ = require('lodash'), async = require('async'), restify = require('restify'); var busybee = require('busybee'); busybee.init({ name : 'api', conf : '/etc/busybee/api' }); /** dependencies */ var conf = busybee.conf, server; /** server attachment */ server = restify.createServer({ name: conf.app.name, version: conf.api.defaultVersion, acceptable: conf.server.acceptable }); server.pre([ restify.authorizationParser(), ]); server.use([
/* * Req/Rep example * */ var zmq = require('zmq'), _ = require('lodash'), busybee = require('busybee'); busybee.init({ name : 'test' }); /** busybee dependent */ var conf = busybee.conf, log = busybee.logger; new busybee.cluster(conf) .master(function () { /** register the service */ busybee.locator.register('test', conf.sockets.service); var reqHandler = function(err, req) { if (err) return log.error(err); log.info('msg recieved: ' + req.hello); var res = new Object(); res.data = 'data on process: ' + process.pid + ' (node) with payload ' + req.hello; return res; } var conn = new busybee.connection.rep(conf.sockets.bind, reqHandler);
/* * Req/Rep example * */ var zmq = require('zmq'), _ = require('lodash'), busybee = require('busybee'); busybee.init({ name : 'push_pull' }); // busybee dependent var conf = busybee.conf, log = busybee.logger; new busybee.cluster(conf) .master(function () { // register the service busybee.locator.register('push_pull', conf.sockets.pull); // we need a reference to a Push connection prior to binding // so that we can first prepare out event handlers var conn = new busybee.connection.push(); conn.on('error', function(err) { return log.error(err); }); conn.on('ready', function() { // messages pushed will not be recieved by req sockets unless they have connected setTimeout(function() {