System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本公开涉及计算机,具体而言,涉及一种服务发现方法、车辆、计算机设备以及计算机程序产品。
技术介绍
1、面向服务的架构(service-oriented architecture,soa)是一种软件架构模式,应用程序的不同组件能够通过网络上的通信协议向其他组件提供服务。在车辆领域中,可以用于设计和开发车辆的分布式系统。soa框架通过定义服务和服务之间的交互,使得车辆内部各个电子控制单元(如域控制器)和系统能够更加模块化、灵活地写作。
2、目前,不论是相同进程内的服务、同一域控制器中不同进程的服务,还是不同域控制器的服务,各个服务的注册以及发现需要统一通过服务管理模块进行,服务管理模块对服务注册和发现的方式效率较低,导致一定程度的计算资源浪费。
技术实现思路
1、本公开实施例至少提供一种服务发现方法、车辆、计算机设备以及计算机程序产品。
2、第一方面,本公开实施例提供了一种服务发现方法,应用于车辆中的域控制器,该方法包括:
3、响应于获取到所述域控制器运行的第一进程的目标客户端发送的服务发现请求,从所述第一进程对应的服务路由表中查找所述服务发现请求对应的目标服务的服务地址信息;所述服务路由表用于指示所述第一进程内注册的各服务的服务地址信息;所述服务路由表被所述第一进程的各客户端共享;
4、若在所述服务路由表中查找到所述目标服务的服务地址信息,将所述服务地址信息发送至所述目标客户端;
5、若在所述服务路由表中未查找到所述目标服务
6、一种可选的实施方式中,所述地址文件为软连接文件;
7、所述基于所述地址文件,确定所述目标服务的服务地址信息,包括:
8、确定所述地址文件的软连接所指向的进程内存文件;所述进程内存文件为所述目标服务所在的第二进程创建的内存文件;
9、将所述进程内存文件对应的服务地址信息作为所述目标服务的服务地址信息。
10、一种可选的实施方式中,所述方法还包括:
11、若在所述目标文件路径下未查找到所述地址文件,对所述目标文件路径进行文件创建事件监测;
12、在监测到所述目标文件路径下发生所述地址文件的文件创建事件的情况下,基于所述地址文件确定所述目标服务的服务地址信息,并将所述服务地址信息发送至所述目标客户端。
13、一种可选的实施方式中,所述方法还包括:
14、响应于获取到当前所在第一进程内的服务发送的服务注册请求,将所述服务注册请求指示的服务地址信息写入至所述服务路由表中;以及,
15、响应于满足服务状态同步条件,向服务管理端发送所述服务路由表中的服务地址信息;所述服务管理端用于与其他域控制器的服务管理端之间进行不同域控制器间的服务地址信息的同步。
16、一种可选的实施方式中,所述方法还包括:
17、若在所述目标文件路径下未查找到所述地址文件,向所述服务管理端发送针对所述目标服务的服务发现请求;所述服务管理端用于从存储的各个域控制器下各进程的服务地址信息中查找并返回所述目标服务的服务地址信息。
18、第二方面,本公开实施例还提供另一种服务发现方法,应用于车辆中的域控制器,该方法包括:
19、响应于获取到所述域控制器运行的第一进程的目标客户端发送的服务发现请求,确定所述服务发现请求对应的目标服务的服务类型;所述服务类型包括进程内服务、域控内进程间服务以及域控间服务;
20、基于所述服务类型,从多个地址获取对象中确定出目标地址获取对象;
21、基于所述目标地址获取对象,查找所述目标服务的服务地址信息,并将查找到的所述服务地址信息发送至所述目标客户端。
22、一种可选的实施方式中,所述基于所述服务类型,从多个地址获取对象中确定出目标地址获取对象,包括:
23、在所述服务类型为进程内服务的情况下,确定所述目标地址获取对象为所述第一进程对应的服务路由表;所述服务路由表内记录有所述第一进程内注册的各服务的服务地址信息。
24、一种可选的实施方式中,所述基于所述服务类型,从多个地址获取对象中确定出目标地址获取对象,包括:
25、在所述服务类型为域控内进程间服务的情况下,确定所述目标地址获取对象为所述目标服务对应的目标文件路径;
26、所述基于所述地址获取对象,查找所述目标服务的服务地址信息,包括:
27、在所述目标文件路径下查找所述目标服务对应的地址文件;所述地址文件为软连接文件;
28、确定所述地址文件的软连接所指向的进程内存文件;所述进程内存文件为所述目标服务所在的第二进程创建的内存文件;
29、将所述进程内存文件对应的服务地址信息作为所述目标服务的服务地址信息。
30、一种可选的实施方式中,所述基于所述地址获取对象,查找所述目标服务的服务地址信息,还包括:
31、在所述目标文件路径下未查找到所述地址文件情况下,对所述目标文件路径进行文件创建事件监测;
32、在监测到所述目标文件路径下发生所述地址文件的文件创建事件的情况下,确定所述地址文件的软连接所指向的进程内存文件,并将所述进程内存文件对应的服务地址信息作为所述目标服务的服务地址信息。
33、一种可选的实施方式中,所述基于所述服务类型,从多个地址获取对象中确定出目标地址获取对象,包括:
34、在所述服务类型为域控间服务的情况下,确定所述目标地址获取对象为所述域控制器的服务管理端;所述服务管理端用于与其他域控制器的服务管理端之间进行不同域控制器间的服务地址信息的同步。
35、第三方面,本公开可选实现方式还提供一种车辆,包括服务发现装置,所述服务发现装置用于执行上述第一方面,或第一方面中任一种可能的实施方式中的步骤,或执行上述第二方面,或第二方面中任一种可能的实施方式中的步骤。
36、第四方面,本公开可选实现方式还提供一种计算机设备,包括:处理器和存储器,所述存储器存储有所述处理器可执行的机器可读指令,当计算机设备运行时,所述机器可读指令被所述处理器执行时执行上述第一方面,或第一方面中任一种可能的实施方式中的步骤,或执行上述第二方面,或第二方面中任一种可能的实施方式中的步骤。
37、第五方面,本公开实施例还提供一种计算机程序产品,包括计算机程序,当所述计算机程序被执行时实现上述第一方面,或第一方面中任一种可能的实施方式中所述的方法,或执行上述第二方面,或第二方面中任一种可能的实施方式中的步骤。
38、关于上述车辆、计算机设备、及计算机程序产品的效果本文档来自技高网...
【技术保护点】
1.一种服务发现方法,其特征在于,应用于车辆中的域控制器,所述方法包括:
2.根据权利要求1所述的方法,其特征在于,所述地址文件为软连接文件;
3.根据权利要求1所述的方法,其特征在于,所述方法还包括:
4.根据权利要求1所述的方法,其特征在于,所述方法还包括:
5.根据权利要求4所述的方法,其特征在于,所述方法还包括:
6.一种服务发现方法,其特征在于,应用于车辆中的域控制器,所述方法包括:
7.根据权利要求6所述的方法,其特征在于,所述基于所述服务类型,从多个地址获取对象中确定出目标地址获取对象,包括:
8.根据权利要求6所述的方法,其特征在于,所述基于所述服务类型,从多个地址获取对象中确定出目标地址获取对象,包括:
9.根据权利要求8所述的方法,其特征在于,所述基于所述地址获取对象,查找所述目标服务的服务地址信息,还包括:
10.根据权利要求6所述的方法,其特征在于,所述基于所述服务类型,从多个地址获取对象中确定出目标地址获取对象,包括:
11.一种车辆,
12.一种计算机设备,其特征在于,包括:处理器和存储器,所述存储器存储有所述处理器可执行的机器可读指令,当计算机设备运行时,所述机器可读指令被所述处理器执行时执行如权利要求1至5,或权利要求6至10中任一项所述的服务发现方法。
13.一种计算机程序产品,包括计算机程序,其特征在于,当所述计算机程序被执行时实现如权利要求1至5,或权利要求6至10中任一项所述的服务发现方法。
...【技术特征摘要】
1.一种服务发现方法,其特征在于,应用于车辆中的域控制器,所述方法包括:
2.根据权利要求1所述的方法,其特征在于,所述地址文件为软连接文件;
3.根据权利要求1所述的方法,其特征在于,所述方法还包括:
4.根据权利要求1所述的方法,其特征在于,所述方法还包括:
5.根据权利要求4所述的方法,其特征在于,所述方法还包括:
6.一种服务发现方法,其特征在于,应用于车辆中的域控制器,所述方法包括:
7.根据权利要求6所述的方法,其特征在于,所述基于所述服务类型,从多个地址获取对象中确定出目标地址获取对象,包括:
8.根据权利要求6所述的方法,其特征在于,所述基于所述服务类型,从多个地址获取对象中确定出目标地址获取对象,包括:
9.根据权利要求8所述的方法,...
【专利技术属性】
技术研发人员:马小虎,
申请(专利权)人:上海集度汽车有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。