最近发现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)