-
Notifications
You must be signed in to change notification settings - Fork 5
composing patterns #1
Open
Description
Would be interesting to take some concepts from axon (reconnect, load-balance, etc) but apply them in a little more composable manner so the lib doesn't grow as much as axon did. Obviously a little tricker if you leverage state within the actors... might be a good idea, might be a bad idea.
Concept:
var net = require('net'); var actorify = require('actorify'); var reconnect = require('reconnect'); var distribute = require('stream-distribute-thing'); // server net.createServer(onconnect).listen(3000); net.createServer(onconnect).listen(3001); function onconnect (sock){ var actor = actorify(sock); actor.on('ping', function(){ console.log('PING'); actor.send('pong'); }); } // client var services = distribute([ reconnect(3000), reconnect(3001) ]); var actor = actorify(services); setInterval(function(){ actor.send('ping'); actor.once('pong', function(){ console.log('PONG'); }); }, 300);
Metadata
Metadata
Assignees
Labels
No labels