1 SOA面向服务的通信交互
如上图所示,女神去热水澡堂洗澡,想搓背(find服务),于是她付要付搓背钱给澡堂老板,这时澡堂老板知道通过小王和小明的毛遂自荐(offer服务),知道现在澡堂有小王小明都会搓背,由于此时小明正在忙着搓背呢,而小王闲着呢。于是澡堂老板安排小王给女神搓背,给了她一个搓背牌子,女神泡完热水澡,拿着搓背牌子找到小王给她搓背。注意图中有三个角色:
。。。。
2 SOME/IP-SD的主要功能
我们在「SOME/IP概述2【SOME/IP的主要中间件功能+SOME/IP报文PDU的封装】」概述了SOME/IP 的主要中间件功能。其中服务发现 (SD) 协议是 SOME/IP 的核心功能。在面向服务的架构中,服务(即函数功能实体【方法、事件或字段】)必须是可发现的。SOME/IP SD有以下几个主要任务:
- (1)SOME/IP SD 协议管理提供动态查找功能实体(即服务)并能配置其访问权限的功能【是提供服务还是阻止它可用】;
- (2)除此之外SOME/IP SD 协议管理向网络发送事件消息的需求(发布/订阅)。这允许仅向需要它们的接收者发送事件消息。
- (3)检测服务实例是否正在运行。
3 动态服务发现的机制
为了让客户端知道哪些服务当前可用,SOME/IP-SD 提供了两种允许动态发现服务的机制。
- Offer Service :提供服务允许服务器向所在的网络提供其所能够提供的服务。
- Find Service :发现服务允许客户端请求可用的服务(通过发现服务来识别可用服务实例及其位置的操作)。