搜索

B.5. Interop.Client, Interop.Server(request-response)

download PDF

这个示例显示了一个基于代理的简单服务器,它将接受来自客户端的字符串,将它们转换为大写,并将它们发回到客户端。它有两个组成部分:

  • client - 将位置行发送到服务器并打印响应.
  • server - 一个简单的服务,它将传入字符串转换为大写字符串,并将它们返回到请求者。

在本例中,服务器和客户端在名为 service_queue 的代理中共享服务端点。服务器在服务端点侦听消息。客户端创建临时动态 ReplyTo 队列,将临时名称嵌入请求中,然后将请求发送到服务器。在收到和处理每个请求后,服务器会将回复发送到客户端的临时 ReplyTo 地址。

Interop.Client 命令行选项

 Command line:
   Interop.Client [peerURI [loopcount]]
 Default:
   Interop.Client amqp://guest:guest@localhost:5672 1

Interop.Server 命令行选项

 Command line:
   Interop.Server [peerURI]
 Default:
   Interop.Server amqp://guest:guest@localhost:5672

Interop.Client, Interop.Server 示例调用

可使用以下命令行启动程序:

$ Interop.Server.exe amqp://guest:guest@localhost:5672
$ Interop.Client.exe amqp://guest:guest@localhost:5672

peertopeer.Server 在命令行中提供的地址上创建一个侦听器。此地址初始化侦听传入连接的 ContainerHost 类对象。收到的消息异步转发到 RequestProcessor 类对象。

peertopeer.Client 打开与服务器的连接,并开始向服务器发送消息。

peertopeer.Client 命令行选项

 Command line:
   PeerToPeer.Client [peerURI]
 Default:
   PeerToPeer.Client amqp://guest:guest@localhost:5672

peertopeer.Server 命令行选项

 Command line:
   PeerToPeer.Server [peerURI]
 Default:
   PeerToPeer.Server amqp://guest:guest@localhost:5672

peertopeer.Client、PeerToPeer.Server 示例调用

在一个窗口中运行 PeerToPeer.Server

$ PeerToPeer.Server.exe
Container host is listening on 127.0.0.1:5672
Request processor is registered on request_processor
Press enter key to exist...
Received a request hello 0
...

在另一个窗口中,运行 PeerToPeer.Client。peertopeer.Client 发送消息,并在收到消息时打印响应。

$ PeerToPeer.Client.exe
Running request client...
Sent request properties(message-id:command-request,reply-to:client-57db8f65-6e3d-474c-a05e-8ca63b69d7c0) body hello 0
Received response:  body reply0
Received response:  body reply1
^C
Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

© 2024 Red Hat, Inc.