我正試圖用ZeroMQ設計一個pub/sub體系結構,並且我想最大限度地使用ZMQ的用戶內部過濾。ZeroMQ pub/sub模式中的多個信封的最佳方法?
在ZMQ中處理多個郵件信封的最佳方式是什麼,以便接收訂戶只能看到匹配它感興趣的所有信封的郵件?
舉個例子層次結構,比方說我有一個UniverseID,一個會話ID和MessageTypeID,我想找到所有給定類型的MessageTypeIDs的給定會話和宇宙,就像這樣:
UniverseID (Subscriber Key, Example = 42)
SessionID (Subscriber Key, Example = 4)
MessageTypeID (Subscriber Key, Example = 2)
Message (Actual Message)
ZMQ中有沒有一種方法可以像使用多個幀的「分層過濾器」一樣過濾消息,或者是在單個信封幀內構建單個密鑰的最佳方法(例如「UniverseID.SessionID.MessageTypeID」或在我們的示例中,「42.4.2」)?
最終目標是由ZMQ外的用戶完成零篩選,這樣如果我在我的套接字上調用zmq_recv,我只能看到匹配所有三個訂戶鍵的消息,而不必手動檢查我是否在做任何事情之前,都對這條信息感興趣。