Python: 使用pyzmq实现集中式日志记录

3
我正在尝试使用pyzmq的内置日志处理程序(请参见此处)为我的分布式应用程序实现集中式日志服务器。虽然从架构的角度来看,我可以理解PUB / SUB模式的使用,但我无法理解这种系统的正确技术实现。
根据我目前所了解的,由于我将有N个单独的进程在N个单独的端口上发布,因此我真的需要N个单独的记录器才能捕获所有消息。
这是否意味着我需要为每个新的发布者在系统上打开一个单独的“侦听器”进程?
编辑: 为了澄清问题:在使用pyzmq提供的工具的上下文中,如何实现集中式日志服务器?

抱歉:刚刚意识到PUSH只与PULL兼容,反之亦然,根据http://api.zeromq.org/2-1:zmq-socket; 所以lesingerouge的答案更好。 - Erik Kaplun
1个回答

4
我发现一个建议,在这里解决了它:
zmq.SUB套接字的一个有趣方面是它们可以连接到多个端点,以便从所有发布者接收消息。解决方案是使用一个侦听器来“订阅”所有可用的发布者。

1
只是出于好奇,因为我现在自己正在学习ZMQ。您的日志服务上使用PULL socket是否是正确的选择? - Michael
在这种情况下,使用PUSH/PULL与使用PUB/SUB有什么区别? - Gilgames

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接