簡體   English   中英

zmq-當進程終止時,如何拉出隊列?

[英]zmq - what happens to pull queue when process dies?

因此,我有8個工人(PULL插座)從一個綁定的PUSH插座進料。 它們每秒處理大量數據,有時會隨機崩潰。 顯然,我應該設法解決這些崩潰問題,但是我很好奇此系統當前的彈性。

我注意到工作進程有時在活動頻繁時會增加內存使用量(這不是泄漏,因為它回落了,這是一個沒有垃圾回收的C程序),這使我相信zmq PULL套接字隊列當工作人員對所有回溯的消息進行排序時,它正在填滿。

如果進程在此狀態下死亡,會發生什么? 消息是否也在PUSH套接字中排隊或丟失?

AFAIK,是的,如果打開了PULL套接字的進程死了,那么在接收方隊列中尚未在回調中接收到的任何消息都將消失。

另外,是的,如果PULL插槽跟不上PUSHer,您會看到一些內存使用增加。 基本上,消息開始在客戶端的PULL套接字的隊列中堆積。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM