1、简介
Service通信是双向的, 它不
仅可以发送消息, 同时还会有反馈。 所以service包括两部分, 一部分是请求方( Clinet) , 另
一部分是应答方/服务提供方( Server) 。 这时请求方( Client) 就会发送一个request, 要等
待server处理, 反馈回一个reply, 这样通过类似“请求-应答”的机制完成整个服务通信。
这种通信方式的示意图如下:
Node B是server( 应答方) , 提供了一个服务的接口, 叫做 /Service , 我们一般都会用
string类型来指定service的名称, 类似于topic。 Node A向Node B发起了请求, 经过处理后得
到了反馈。
Service是同步通信方式, 所谓同步就是说, 此时Node A发布请求后会在原地等待reply, 直到
Node B处理完了请求并且完成了reply, Node A才会继续执行。 Node A等待过程中, 是处于
阻塞状态的成通信。 这样的通信模型没有频繁的消息传递, 没有冲突与高系统资源的占用,
只有接受请求才执行服务, 简单而且高效
2、操作命令
3、topic VS service
使用 srv