[zeromq-dev] Publishers stops sending data after sometime. Subscriber is required to fix publisher

Justin Karneges justin at karneges.com
Sat Jan 27 09:36:11 CET 2018


One thing you might do is run netstat on both sides to see if the
connections are still listed. In a dead connection scenario, netstat
should no longer list the connection on the PUB side, but should remain
listing it on the SUB side.
Note that it can take time for the PUB connection to give up. On Linux,
the default is something like 20 minutes after it dies, so give the PUB
side some extra time after messages stop transmitting. If transmission
hasn't worked for over 20 minutes and netstat is still showing the
connection on the PUB side, then the problem may be something else.
On Sat, Jan 27, 2018, at 12:13 AM, Ravi Joshi via zeromq-dev wrote:
> Hi Justin,
> 
> Thank you very much. How do I make sure that I am getting dead
> connections?> 
> For time being, I am enabling ZMQ_TCP_KEEPALIVE on all 3 SUB sockets.> 
> I will tell you the status of it after sometime.
> 
> Thanks
> -
> Ravi
> Sent from Yahoo Mail for iPhone[1]
> 
> On Saturday, January 27, 2018, 3:27 PM, Justin Karneges
> <justin at karneges.com> wrote:>> Hi,
>> 
>> One issue with socket types that don't usually write data (such as
>> SUB) is that a dead connection might go unnoticed forever. You can
>> work around this by enabling TCP keep alives on the SUB socket. I
>> don't know if you're getting dead connections here but just thought
>> I'd mention it.>> 
>> Justin
>> 
>> On Fri, Jan 26, 2018, at 9:33 PM, Ravi Joshi via zeromq-dev wrote:
>> > Hi,
>> > 
>> > I am using Publisher-Subscriber pattern consisting of 3
>> > publishers to>> > publish 3 different types of data. All 3 publishers are
>> > written in a>> > single C# file. However, each subscriber is written in a
>> > separate C++>> > file inside ROS. From the point of ZeroMQ, there is no
>> > difference in>> > each subscriber, since context, socket initialization and receiving>> > message is done in the same way for all subscriber. Hence, in
>> > order to>> > make the mail shorter, I am just posting code snippet of 1 
>> > subscriber below.
>> > 
>> > The publisher code in C# snippet is available in Pastebin 
>> > (https://pastebin.com/S65LmwuV).
>> > The subscriber code in C++ snippet is available in Pastebin 
>> > (https://pastebin.com/xb3V0n0u).
>> > 
>> > The publisher works well initially for some time and successfully>> > transmits data at 700MBPS rate but stops transmitting any data
>> > after 5-6>> > hours.
>> > 
>> > In order to make publisher working again, I need to restart the 
>> > subscribers. This is strange to me since it is unexpected
>> > behavior as>> > per the Publisher-Subscriber pattern is concerned.
>> > 
>> > Why such weird behavior? Any workaround, please.
>> > 
>> > -
>> > Thanks
>> > Ravi
>> > _______________________________________________
>> > zeromq-dev mailing list
>> > zeromq-dev at lists.zeromq.org
>> > 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
>>> 
> _________________________________________________
> zeromq-dev mailing list
> zeromq-dev at lists.zeromq.org
> https://lists.zeromq.org/mailman/listinfo/zeromq-dev


Links:

  1. https://overview.mail.yahoo.com/?.src=iOS
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.zeromq.org/pipermail/zeromq-dev/attachments/20180127/6fda65d6/attachment.htm>


More information about the zeromq-dev mailing list