[zeromq-dev] ZeroMQ Secure Broadcast with Proxy losing messages using C# clrzmq
up201503995
up201503995 at fe.up.pt
Mon Apr 27 23:37:30 CEST 2020
I made the changes you mentioned and it works now.
Thanks for the help.
Davide Costa
Em 27.04.2020 19:23, Doron Somech escreveu:
> NetMQ now supports curve. Anyway I suggest to set both Send and
> Receive Highwatermarks, especially when using curve. Make sure to set
> it on edge sockets and proxy. I don't suggest to use zero but to
> calculate the number according to your system tolerance. Also, you
> might want to increase zeromq IO threads (default is one) as
> encryption is CPU heavy.
>
> On Mon, Apr 27, 2020, 21:13 up201503995 via zeromq-dev
> <zeromq-dev at lists.zeromq.org> wrote:
>
>> I am doing some performance tests on ZeroMQ to compare it with
>> others
>> like RabbitMQ and ActiveMQ.
>>
>> In my broadcast tests and to avoid "The Dynamic Discovery Problem"
>> as
>> referred by ZeroMQ documentation I have used a proxy. In my
>> scenario, I
>> am using 50 concurrent publishers each one sending 500 messages
>> with 1ms
>> delay between sends. Each message is then read by 50 subscribers.
>> And as
>> I said I am losing messages, each of the subscribers should receive
>> a
>> total of 25000 messages and they are each receiving between 5000
>> and
>> 10000 messages only.
>>
>> I am using Windows and C# .Net client clrzmq4 (4.1.0.31).
>> Code to reproduce the issue is available at
>> https://pastebin.com/SEqEhSL1 [1]
>>
>> I have already tried some solutions that I found on some posts:
>>
>> I have set linger to TimeSpan.MaxValue
>> I have set ReceiveHighWatermark to 0 (as it is presented as
>> infinite, but I have tried also Int32.MaxValue)
>> I have set checked for slow start receivers, I made receivers
>> start
>> some seconds before publishers
>> I had to make sure that no garbage collection is made to the
>> socket
>> instances (linger should do it but to make sure)
>> I have a similar scenario (with similar logic) using NetMQ and
>> it
>> works fine. The other scenario does not use security though and
>> this one
>> does (and that's also the reason why I use clrzmq in this one
>> because I
>> need client authentication with certificates that is not yet
>> possible on
>> NetMQ).
>> I have also tested this scenario with clrzmq but with no
>> security
>> and it worked
>>
>> Does someone know another thing to check? Or has it happened to
>> anyone
>> before?
>>
>> Thanks,
>>
>> Davide Costa
>> _______________________________________________
>> zeromq-dev mailing list
>> zeromq-dev at lists.zeromq.org
>> https://lists.zeromq.org/mailman/listinfo/zeromq-dev [2]
>
>
> Links:
> ------
> [1] https://pastebin.com/SEqEhSL1
> [2] https://lists.zeromq.org/mailman/listinfo/zeromq-dev
>
> _______________________________________________
> zeromq-dev mailing list
> zeromq-dev at lists.zeromq.org
> https://lists.zeromq.org/mailman/listinfo/zeromq-dev
More information about the zeromq-dev
mailing list