You need to make every "client" a tcp server. if they live on the same machine, use a unix socket instead of a port number. see the docs for "net".
Obviously, each node will need to keep track of every other node it needs to communicate with. something like http://npm.im/seaport might be good for that. Also, what kind of messages are they sending? On Tue, Sep 11, 2012 at 10:21 AM, Yi Tan <[email protected]> wrote: > Thanks Johnny, > > dnode is very inspiring. cluster2 may help us a lot in production! > > Regards, > > ty > > > > 2012/9/11 Johnny Honestly <[email protected]> >> >> I heard about this cluster manager today directly from the guys at ebay >> working on ql.io >> >> https://github.com/ql-io/cluster2 >> >> You can stream buffers from parents to child process using stdin/out >> >> If you need sockets try dnode >> >> https://github.com/substack/dnode >> >> >> On Monday, September 10, 2012 1:45:12 AM UTC-7, Yi wrote: >>> >>> Hi node mates: >>> >>> I'm looking for your advice about how to design and implement an >>> mechanism for real-time socket-based cross clustered-process data >>> communication and computation. >>> >>> [The server layout] >>> >>> clientA <--tcp socket--> node service A <--> DataModelA <--> unique radis >>> data store >>> >>> clientB <--tcp socket--> node service B <--> DataModelB <--> unique radis >>> data store >>> >>> * node service A and B are cluster on the same server >>> * 1 data model represent 1 client at the run time >>> * both node service A and B talk to the same redis data store >>> >>> [The function request] >>> >>> I need to implement a mechanism, in which: >>> 1. clients in difference processes can communication with each other >>> efficiently. >>> 2. there need to be a centralized place for data computation base on data >>> models represents difference clients >>> >>> the logic looks like the following diagram: >>> >>> clientA <--tcp socket--> node service A >>> | >>> socket pipe >>> | >>> v >>> clientB <--tcp socket--> node service B <--> DataModelA and B <--> unique >>> radis data store >>> >>> Do you know what is the best way to do this, or is there something >>> already been built >>> >>> Many thanks, >>> >>> ty >>> >> -- >> Job Board: http://jobs.nodejs.org/ >> Posting guidelines: >> https://github.com/joyent/node/wiki/Mailing-List-Posting-Guidelines >> You received this message because you are subscribed to the Google >> Groups "nodejs" group. >> To post to this group, send email to [email protected] >> To unsubscribe from this group, send email to >> [email protected] >> For more options, visit this group at >> http://groups.google.com/group/nodejs?hl=en?hl=en > > > -- > Job Board: http://jobs.nodejs.org/ > Posting guidelines: > https://github.com/joyent/node/wiki/Mailing-List-Posting-Guidelines > You received this message because you are subscribed to the Google > Groups "nodejs" group. > To post to this group, send email to [email protected] > To unsubscribe from this group, send email to > [email protected] > For more options, visit this group at > http://groups.google.com/group/nodejs?hl=en?hl=en -- Job Board: http://jobs.nodejs.org/ Posting guidelines: https://github.com/joyent/node/wiki/Mailing-List-Posting-Guidelines You received this message because you are subscribed to the Google Groups "nodejs" group. To post to this group, send email to [email protected] To unsubscribe from this group, send email to [email protected] For more options, visit this group at http://groups.google.com/group/nodejs?hl=en?hl=en
