Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

<shameless plug> try zeromq.node for your interprocess communication needs! </shameless plug>


This is actually just what I'm starting to use for inter-process communication with node.js, for a realtime MMO game. I'm dividing the (2d) world into squares, each handled by a node.js process which will each be responsible for all the game logic and computations within that square, with some extra logic for handling objects that span two or more adjacent squares.

All IPC goes through a single (per machine) routing server which handles routing messages to the various node.js processes, which may or may not be on the same physical server. Only communications are for objects around the edges of the squares, for collision detection etc. and for transferring websocket connections to another node.js process.

After a lot of thought, that seems to me to be the best way to work out a scalable solution. Have yet to see if it'll work well, but I see no reason why it shouldn't. Now if only I had enough users to test it..

Oh, and thanks for the great 0MQ library! :)


That's awesome. Let me know if you have any problems!


Include a link when you plug! https://github.com/JustinTulloss/zeromq.node


I was on the ipad, just getting tags was a struggle! Thanks for the link :).


I found this library last night and was surprised how flipping easy it was to use, and how fast it was.

I wrote a tiny little script to test the max number of concurrent connections.

https://github.com/JustinTulloss/zeromq.node/blob/master/exa...

On my OS X machine it fails at 893 open connections. I compiled zeromq to have max_sockets = 5000 (zeromq2/src/config.hpp)

The error is:

s_849.send(msg); Too many open files rc == 0 (mailbox.cpp:374) Abort trap

What am I doing wrong? Should I just have one connection to zeromq and have all my async callbacks use it? I have a comment below that describes what I am trying to build. Thanks!




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: