中间件通信方法、装置、电子设备及存储介质与流程

文档序号:36400541发布日期:2023-12-16 03:08阅读:29来源:国知局
中间件通信方法与流程

本技术涉及车辆通信,尤其涉及一种中间件通信方法、装置、电子设备及存储介质。


背景技术:

1、在当前的汽车通信领域,面向服务架构(service-oriented architecture,soa)的软件架构可使用基于ip的可扩展面向服务的中介软件(协议scalable service-oriented middleware over ip,some/ip)、数据分发服务(data distribution service,dds)协议进行跨域通信,通常使用进程间通信(inter-process communication,ipc)进行域内通信。

2、现有技术中,中间件对应的soa服务端在同一时刻仅支持一种通信协议,进而实现soa服务端和soa客户端之间的数据转换与传递。

3、在实际应用过程中,当多种协议对应的soa客户端同时调用soa服务端时,存在soa服务端无法同时与支持不同协议的soa客户端建立通信的问题。


技术实现思路

1、本技术提供一种中间件通信方法、装置、电子设备及存储介质,用以解决当多种协议对应的soa客户端同时调用soa服务端时,存在soa服务端无法同时与支持不同协议的soa客户端建立通信的问题。

2、第一方面,本技术提供了一种中间件通信方法,应用于车机设备,所述车机设备内运行有中间件、soa服务端和soa客户端,包括:获取第一服务信息,服务信息表征实现所述soa服务端和所述soa客户端之间通信的协议特征;通过所述soa服务端将所述第一服务信息保存至第一中间件内的第一服务管理模块,并建立第一通信对象;通过所述第一服务管理模块,将所述第一服务信息发送至第二中间件内的第二服务管理模块;通过所述soa客户端得到所述第二服务管理模块提供的第二服务信息,并建立第二通信对象;根据所述第一通信对象和所述第二通信对象,建立通信通道,所述通信通道用于实现所述soa服务端和所述soa客户端之间的通信。

3、在一种可能的实现方式中,所述第一中间件中包括服务发现模块,所述获取第一服务信息,包括:通过所述soa服务端调用所述服务发现模块的注册接口,进行服务注册;根据所述服务注册,得到所述第一服务信息。

4、在一种可能的实现方式中,所述中间件中包括通信模块,所述通信模块用于传输所述soa服务端与所述soa客户端之间的通信数据;所述建立第一通信对象,包括:通过所述soa服务端根据所述第一服务信息和所述通信模块,绑定通信协议;根据所述通信协议,建立第一通信对象。

5、在一种可能的实现方式中,所述第二中间件中包括服务发现模块,所述通过所述soa客户端得到所述第二服务管理模块提供的第二服务信息,并建立第二通信对象,包括:通过所述soa客户端调用所述服务发现模块的查找接口,进行服务查找;根据所述服务查找,得到所述第二服务管理模块提供的第二服务信息,并建立第二通信对象。

6、在一种可能的实现方式中,所述第二服务管理模块中存储有所述第一服务信息,所述根据所述服务查找,得到所述第二服务管理模块提供的第二服务信息,并建立第二通信对象,包括:获取第一协议列表,所述第一协议列表中包括至少一个待匹配协议;根据所述第一服务信息,得到第二协议列表,所述第二协议列表中包括按匹配优先级排序的待查询协议,所述匹配优先级由匹配次数确定;根据所述服务查找、所述第一协议列表和所述第二协议列表,得到所述第二服务信息,并建立第二通信对象。

7、在一种可能的实现方式中,所述中间件中还包括协议模块、协议绑定模块、协议接口模块、配置管理模块和工具模块;所述协议模块用于提供通信协议,所述通信协议包括域内通信协议和跨域通信协议;所述协议绑定模块用于将所述通信协议适配至所述协议接口模块;所述配置管理模块用于实现对所述中间件的配置文件的读写;所述工具模块用于生成所述soa服务端和所述soa客户端的代理代码。

8、第二方面,本技术提供了一种车机设备,包括:第一控制器和第二控制器,所述第一控制器中包括soa服务端和第一中间件,所述第二控制器中包括soa客户端和第二中间件;

9、所述第一控制器,用于获取第一服务信息,服务信息表征实现所述soa服务端和所述soa客户端之间通信的协议特征;通过所述soa服务端将所述第一服务信息保存至所述第一中间件内的第一服务管理模块,并建立第一通信对象;通过所述第一服务管理模块,将所述第一服务信息发送至所述第二中间件内的第二服务管理模块;

10、所述第二控制器,用于通过所述soa客户端得到所述第二服务管理模块提供的第二服务信息,并建立第二通信对象;根据所述第一通信对象和所述第二通信对象,建立通信通道,所述通信通道用于实现所述soa服务端和所述soa客户端之间的通信。

11、第三方面,本技术提供了一种中间件通信装置,运行有中间件、soa服务端和soa客户端,包括:

12、获取模型,用于获取第一服务信息,服务信息表征实现所述soa服务端和所述soa客户端之间通信的协议特征;

13、第一处理模型,用于通过所述soa服务端将所述第一服务信息保存至第一中间件内的第一服务管理模块,并建立第一通信对象;

14、所述第一处理模型,还用于通过所述第一服务管理模块,将所述第一服务信息发送至第二中间件内的第二服务管理模块;

15、第二处理模型,用于通过所述soa客户端得到所述第二服务管理模块提供的第二服务信息,并建立第二通信对象;

16、通信模型,用于根据所述第一通信对象和所述第二通信对象,建立通信通道,所述通信通道用于实现所述soa服务端和所述soa客户端之间的通信。

17、在一种可能的实现方式中,所述第一中间件中包括服务发现模块,所述获取模型在获取第一服务信息时,具体用于:通过所述soa服务端调用所述服务发现模块的注册接口,进行服务注册;根据所述服务注册,得到所述第一服务信息。

18、在一种可能的实现方式中,所述中间件中包括通信模块,所述通信模块用于传输所述soa服务端与所述soa客户端之间的通信数据;所述第一处理模型在建立第一通信对象时,具体用于:通过所述soa服务端根据所述第一服务信息和所述通信模块,绑定通信协议;根据所述通信协议,建立第一通信对象。

19、在一种可能的实现方式中,所述第二中间件中包括服务发现模块,所述第二处理模型在通过所述soa客户端得到所述第二服务管理模块提供的第二服务信息,并建立第二通信对象时,具体用于:通过所述soa客户端调用所述服务发现模块的查找接口,进行服务查找;根据所述服务查找,得到所述第二服务管理模块提供的第二服务信息,并建立第二通信对象。

20、在一种可能的实现方式中,所述第二服务管理模块中存储有所述第一服务信息,所述第二处理模型在根据所述服务查找,得到所述第二服务管理模块提供的第二服务信息,并建立第二通信对象时,具体用于:获取第一协议列表,所述第一协议列表中包括至少一个待匹配协议;根据所述第一服务信息,得到第二协议列表,所述第二协议列表中包括按匹配优先级排序的待查询协议,所述匹配优先级由匹配次数确定;根据所述服务查找、所述第一协议列表和所述第二协议列表,得到所述第二服务信息,并建立第二通信对象。

21、在一种可能的实现方式中,所述中间件中还包括协议模块、协议绑定模块、协议接口模块、配置管理模块和工具模块;所述协议模块用于提供通信协议,所述通信协议包括域内通信协议和跨域通信协议;所述协议绑定模块用于将所述通信协议适配至所述协议接口模块;所述配置管理模块用于实现对所述中间件的配置文件的读写;所述工具模块用于生成所述soa服务端和所述soa客户端的代理代码。

22、第四方面,本技术提供了一种电子设备,包括:处理器,以及与所述处理器通信连接的存储器;

23、所述存储器存储计算机执行指令;

24、所述处理器执行所述存储器存储的计算机执行指令,以实现如本技术实施例第一方面任一项所述的中间件通信方法。

25、第五方面,本技术提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机执行指令,所述计算机执行指令被处理器执行时用于实现如本技术实施例第一方面任一项所述的中间件通信方法。

26、根据本技术实施例的第六方面,本技术提供了一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现如上第一方面任一项所述的中间件通信方法。

27、本技术提供的中间件通信方法、装置、电子设备及存储介质,通过获取第一服务信息,服务信息表征实现所述soa服务端和所述soa客户端之间通信的协议特征;通过所述soa服务端将所述第一服务信息保存至第一中间件内的第一服务管理模块,并建立第一通信对象;通过所述第一服务管理模块,将所述第一服务信息发送至第二中间件内的第二服务管理模块;通过所述soa客户端得到所述第二服务管理模块提供的第二服务信息,并建立第二通信对象;根据所述第一通信对象和所述第二通信对象,建立通信通道,所述通信通道用于实现所述soa服务端和所述soa客户端之间的通信。在基于第一服务信息,通过soa服务端建立第一通信对象的基础上,通过第一服务管理模块,将第一服务信息发送至第二中间件内的第二服务管理模块,通过soa客户端基于第二服务管理模块提供的第二服务信息建立第二通信对象,进而建立了通信通道,实现了soa服务端和soa客户端之间的通信,解决了当多种协议对应的soa客户端同时调用soa服务端时,存在soa服务端无法同时与支持不同协议的soa客户端建立通信的问题。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1