我读过Rabbitmq的official document,对我来说还不是很清楚吗?
它类似于Consumer Ack
,但不同之处在于,当服务器从发布者客户端收到消息时,rabbitmq服务器会将Publisher Confirm
发送到发布者客户端?
有人可以解释更多吗?
提前谢谢。
答案 0 :(得分:0)
类似于Consumer Ack,但区别在于 发布确认是由Rabbitmq服务器在以下情况下发送到发布客户端的 服务器从发布者客户端收到消息?
是的。启用发布者确认后,发布者会收到消息已发布的确认,您可以确定。
未经发布者确认,在某些情况下您可能会丢失消息。一个例子:您的应用程序可以将数据发布到TCP缓冲区,但是随后崩溃,或者服务器本身可能崩溃。另一个示例:网络设备可能在传递中失败。另一个例子:RabbitMQ本身可能会在收到包含您的消息的TCP数据后崩溃。
注意: RabbitMQ团队监视class ClassA:
def __init__(self): self.__var = 10
def method1(self): return self.get_var() + 1
def get_var(self): return self.__var
def set_var(self, val): self.__var = val
class ClassB(ClassA):
def __init__(self): self.__var = 20
def get_var(self): return self.__var
def set_var(self, val): self.__var = val
ObjectA = ClassA()
ObjectB = ClassB()
print(ObjectA.method1())
print(ObjectB.method1())
mailing list,并且有时仅在StackOverflow上回答问题。