Hi Doron,

Can you elaborate? I've heard about threadsafe sockets in zmq but haven't seen them in the wild. Any pointers?

Rg,

Arnaud

On 5/16/19 6:01 PM, Doron Somech wrote:
File descriptor is being used for signaling.
If zactor would use thread safe sockets it would be unlimited.

On Thu, May 16, 2019, 18:51 Arnaud Loonstra <[email protected] <mailto:[email protected]>> wrote:

    Hi all,

    I'm currently stress testing a setup with actors. What's the maximum
    number of running zactors? As it's using inproc no file descriptors are
    involved. I'm using this test:

          // mega zactor test
          zlist_t *spawned_act = zlist_new();
          for (int i=0;i<507;i++)
          {
              zactor_t *act = zactor_new(echo_actor, "Hello actor");
              assert(act);
              zlist_append(spawned_act, act);
          }
          while(zlist_size(spawned_act) > 0)
          {
              zactor_t *dstr = zlist_pop(spawned_act);
              zactor_destroy(&dstr);
          }

    If I go beyond 507 actors I receive an assert:

    src/zsock.c:88: zsock_new_checked: Assertion `self->handle' failed.

    Which traces back to:

    self->handle = zsys_socket (type, filename, line_nbr);

    Which is a wrapper for creating a zmq socket.

    Any ideas why there's is this limit of 507 actors?

    I also tried with my own actor library which adds pub/sub sockets to
    the
    actor. I then have a maximum of 252 actors.

    Rg,

    Arnaud

    _______________________________________________
    zeromq-dev mailing list
    [email protected] <mailto:[email protected]>
    https://lists.zeromq.org/mailman/listinfo/zeromq-dev


_______________________________________________
zeromq-dev mailing list
[email protected]
https://lists.zeromq.org/mailman/listinfo/zeromq-dev

_______________________________________________
zeromq-dev mailing list
[email protected]
https://lists.zeromq.org/mailman/listinfo/zeromq-dev

Reply via email to