python zmq的REQ和REP的代码示例
时间: 2023-05-31 12:03:49 浏览: 240
以下是Python中使用ZMQ REQ和REP模式的示例代码:
REQ端代码:
```python
import zmq
context = zmq.Context()
socket = context.socket(zmq.REQ)
socket.connect("tcp://localhost:5555")
while True:
message = input("请输入要发送的消息:")
socket.send_string(message)
response = socket.recv()
print("接收到的响应为:{}".format(response.decode()))
```
REP端代码:
```python
import zmq
context = zmq.Context()
socket = context.socket(zmq.REP)
socket.bind("tcp://*:5555")
while True:
message = socket.recv()
print("接收到的消息为:{}".format(message.decode()))
response = input("请输入要回复的消息:")
socket.send_string(response)
```
在这个示例中,REQ端通过创建一个ZMQ的Context对象和一个REQ类型的socket对象来与REP端通信。它使用socket.connect()方法来连接到REP端,然后通过socket.send_string()方法发送消息,使用socket.recv()方法接收响应。
REP端通过创建一个ZMQ的Context对象和一个REP类型的socket对象来接收REQ端的消息。它使用socket.bind()方法将socket对象绑定到一个特定的IP地址和端口号,然后使用socket.recv()方法接收REQ端发送的消息,并使用input()方法来回复消息,最后使用socket.send_string()方法将回复发送回REQ端。
阅读全文