System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本申请涉及车辆电子,特别涉及一种支持面向服务软件架构的交互方法、装置、设备及介质。
技术介绍
1、随着车辆电子技术的发展,以太网通信在整车ee(electrical/electronicarchitecture,整车电子电气架构)架构中变的越来越重要。一方面some/ip(scalableservice-oriented middleware over ip,基于因特网协议的可扩展面向服务通信中间件)是支持整车以太网通信的重要协议,负责座舱域、车身域等汽车功能域的通信;另一方面在智驾域是以消息中间件为中心的通信系统,连接各个智驾算法模块和adas(advanceddriver assistance system,高级驾驶辅助系统)应用模块。然而,智驾域的应用需要通过some/ip和座舱域、车身域等汽车功能域进行通信,来完成对汽车其他域的控制,这就需要一种方法解决智驾域的应用和其他汽车功能域的some/ip通信问题。
2、相关技术中,some/ip通信被集成到soa(service-oriented architecture,面向服务的体系架构)服务中,每个和some/ip服务通信的soa进程都会加载some/ip相关的程序,且根据不同的车型需要为每个soa服务配置车辆的some/ip相关的配置。
3、然而,该方法中每条some/ip需要单独通信,数量繁多,难以支持进行一对多的消息融合通信,亟待解决。
技术实现思路
1、本申请提供一种支持面向服务软件架构的交互
2、为达到上述目的,本申请第一方面实施例提出一种支持面向服务软件架构的交互方法,包括以下步骤:
3、获取车辆的some/ip服务列表,根据所述some/ip服务列表为每个some/ip服务配置对应的配置文件;
4、根据所述配置文件创建至少一种处理集群处理所述some/ip服务的消息输入,并利用预设的消息中间件,监控some/ip服务话题的活跃状态;
5、根据所述活跃状态,利用所述some/ip服务订阅some/ip服务发布的话题和/或发布some/ip服务订阅的话题。
6、根据本申请的一个实施例,所述根据所述配置文件构建至少一个处理集群处理所述some/ip服务的消息输入,包括:
7、根据所述配置文件在所述some/ip服务内部创建至少一种处理集群;
8、在每个处理集群中创建预设数量的处理单元,并基于预设的hash函数将所述some/ip服务分配至多个队列,以利用所述处理单元处理所述some/ip服务的消息输入。
9、根据本申请的一个实施例,所述基于预设的hash函数将所述some/ip服务分配至多个队列,包括:
10、获取所述some/ip服务的消息频率和消息复杂程度;
11、根据所述消息频率和所述消息复杂程度,计算所述some/ip服务消息的权重,并基于所述预设的hash函数和所述权重将所述some/ip服务分配至所述多个队列。
12、根据本申请的一个实施例,所述基于所述预设的hash函数和所述权重将所述some/ip服务分配至所述多个队列,包括:
13、确定所述预设数量作为每个队列的数量,并初始化所述每个队列的容量,在任一队列的服务数量满足预设容量条件时,基于小于当前队列容量最小质数进行动态扩容;
14、将待分配some/ip服务列表的总负载作为所述预设的hash函数的参数,基于所述参数分配所述some/ip服务至所述多个队列。
15、根据本申请的一个实施例,在基于所述参数分配所述some/ip服务至所述多个队列之后,还包括:
16、在任一队列的服务数量满足所述预设容量条件,且权重差值是该队列上限的预设倍数时,基于所述预设的hash函数对最小权重值的服务进行重新分配,直至队列满足预设条件。
17、根据本申请实施例提出的支持面向服务软件架构的交互方法,通过根据some/ip服务列表可以为每个some/ip服务配置对应的配置文件,进而根据配置文件创建至少一种处理集群处理some/ip服务的消息输入,并利用预设的消息中间件,监控some/ip服务话题的活跃状态,以根据活跃状态,利用some/ip服务订阅some/ip服务发布的话题和/或发布some/ip服务订阅的话题。由此,通过将车辆的some/ip服务映射到话题,解决了每条some/ip需要单独通信,数量繁多,难以支持进行一对多的消息融合通信的问题,使得智驾域无需关心some/ip协议的通信,仅需要使用智驾域的话题进行通信,简化了通信复杂度,提高了便捷性。
18、为达到上述目的,本申请第二方面实施例提出一种支持面向服务软件架构的交互装置,包括:
19、配置模块,用于获取车辆的some/ip服务列表,根据所述some/ip服务列表为每个some/ip服务配置对应的配置文件;
20、创建模块,用于根据所述配置文件创建至少一种处理集群处理所述some/ip服务的消息输入,并利用预设的消息中间件,监控some/ip服务话题的活跃状态;
21、处理模块,用于根据所述活跃状态,利用所述some/ip服务订阅some/ip服务发布的话题和/或发布some/ip服务订阅的话题。
22、根据本申请的一个实施例,所述创建模块,包括:
23、创建单元,用于根据所述配置文件在所述some/ip服务内部创建至少一种处理集群;
24、分配单元,用于在每个处理集群中创建预设数量的处理单元,并基于预设的hash函数将所述some/ip服务分配至多个队列,以利用所述处理单元处理所述some/ip服务的消息输入。
25、根据本申请的一个实施例,所述分配单元,包括:
26、获取子单元,用于获取所述some/ip服务的消息频率和消息复杂程度;
27、分配子单元,用于根据所述消息频率和所述消息复杂程度,计算所述some/ip服务消息的权重,并基于所述预设的hash函数和所述权重将所述some/ip服务分配至所述多个队列。
28、根据本申请的一个实施例,所述分配子单元,具体用于:
29、确定所述预设数量作为每个队列的数量,并初始化所述每个队列的容量,在任一队列的服务数量满足预设容量条件时,基于小于当前队列容量最小质数进行动态扩容;
30、将待分配some/ip服务列表的总负载作为所述预设的hash函数的参数,基于所述参数分配所述some/ip服务至所述多个队列。
31、根据本申请的一个实施例,在基于所述参数分配所述some/ip服务至所述多个队列之后,所述分配子单元,还用于:
32、在任一队列的服务数量满足所述预设容量本文档来自技高网...
【技术保护点】
1.一种支持面向服务软件架构的交互方法,其特征在于,包括以下步骤:
2.根据权利要求1所述的方法,其特征在于,所述根据所述配置文件构建至少一个处理集群处理所述SOME/IP服务的消息输入,包括:
3.根据权利要求2所述的方法,其特征在于,所述基于预设的Hash函数将所述SOME/IP服务分配至多个队列,包括:
4.根据权利要求3所述的方法,其特征在于,所述基于所述预设的Hash函数和所述权重将所述SOME/IP服务分配至所述多个队列,包括:
5.根据权利要求4所述的方法,其特征在于,在基于所述参数分配所述SOME/IP服务至所述多个队列之后,还包括:
6.一种支持面向服务软件架构的交互装置,其特征在于,包括:
7.根据权利要求6所述的装置,其特征在于,所述创建模块,包括:
8.根据权利要求7所述的装置,其特征在于,所述分配单元,包括:
9.一种电子设备,其特征在于,包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述程序,以实现如权利要求1-5
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行,以用于实现如权利要求1-5任一项所述的支持面向服务软件架构的交互方法。
...【技术特征摘要】
1.一种支持面向服务软件架构的交互方法,其特征在于,包括以下步骤:
2.根据权利要求1所述的方法,其特征在于,所述根据所述配置文件构建至少一个处理集群处理所述some/ip服务的消息输入,包括:
3.根据权利要求2所述的方法,其特征在于,所述基于预设的hash函数将所述some/ip服务分配至多个队列,包括:
4.根据权利要求3所述的方法,其特征在于,所述基于所述预设的hash函数和所述权重将所述some/ip服务分配至所述多个队列,包括:
5.根据权利要求4所述的方法,其特征在于,在基于所述参数分配所述some/ip服务至所述多个队列之后,还包括:...
【专利技术属性】
技术研发人员:桑世尧,刘磊,徐凯,李宁,肖勇军,吕兴峰,
申请(专利权)人:大卓智能科技有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。