最近发现ZMQ中的ROUTER-DEALER模式十分好用,经销商DEALER需要配置一个ID,对应路由ROUTER根据ID来收发消息;
context = zmq.Context()
socket = context.socket(zmq.ROUTER)
socket.bind("tcp://*:5555")
while True:
recv_id,data = socket.recv_multipart()
print(recv_id.decode(),data.decode())
socket.send_multipart([recv_id,'recv ok'.encode()])
context = zmq.Context()
socket = context.socket(zmq.DEALER)
socket.setsockopt_string(zmq.IDENTITY,'id_123')
socket.connect("tcp://localhost:5555")
while True:
data = input("input your data:")
socket.send(data.encode())
response = socket.recv()
print(response)
本文介绍了ZeroMQ(ZMQ)中的ROUTER-DEALER模式,展示了如何通过设置经销商DEALER的身份标识和路由ROUTER进行消息的发送与接收。在示例代码中,DEALER配置了ID,并连接到ROUTER,两者通过TCP连接在端口5555上进行通信。用户输入的数据会被发送到ROUTER,并接收到响应。
3171

被折叠的 条评论
为什么被折叠?



