I'm not sure I understand, each file descriptor is a socket. When zeromq accept tcp socket another file descriptor is created. OS should be able to manage thousands and tens of thousand open descriptor.
On Jul 19, 2016 6:56 PM, "Alexander Poddey" <[email protected]> wrote: > > Essentially, the question is: > why does ZMQ consume file descriptors at all? > > > > > > Hi, > > > > I have a setup in C++ on linux where a master process is setting up a > > ZMQ_ROUTER and then forks many child processes, which then connect to > that > > router (tcp protocol). > > Whenever a child zmq_connect's to the master, a file descriptor is > > occupied (and assigned to the master process). They get free'ed fine when > > the connection is close. > > > > This however limits the number of interacting processes to the number of > > allowed file descriptors (per process). For me (linux), this currently is > > 1024, which is way to small for my intended use (multi-agent / swarm > > simulation). > > > > Can I prevent this behaviour? > > In my mesaging architecture, each agent connects to 6 sockets, so with > 100 > > agents I end up with 600 occupied file descriptors :-( > > > > Alexander > > > > > > _______________________________________________ > > zeromq-dev mailing list > > [email protected] > > http://lists.zeromq.org/mailman/listinfo/zeromq-dev > > > _______________________________________________ > zeromq-dev mailing list > [email protected] > http://lists.zeromq.org/mailman/listinfo/zeromq-dev
_______________________________________________ zeromq-dev mailing list [email protected] http://lists.zeromq.org/mailman/listinfo/zeromq-dev
