CN116302001A - 服务注册管理方法、装置、设备及存储介质 - Google Patents
服务注册管理方法、装置、设备及存储介质 Download PDFInfo
- Publication number
- CN116302001A CN116302001A CN202310374621.5A CN202310374621A CN116302001A CN 116302001 A CN116302001 A CN 116302001A CN 202310374621 A CN202310374621 A CN 202310374621A CN 116302001 A CN116302001 A CN 116302001A
- Authority
- CN
- China
- Prior art keywords
- service
- service information
- application program
- preset
- memory container
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000007726 management method Methods 0.000 title claims abstract description 35
- 238000000034 method Methods 0.000 claims abstract description 54
- 238000004590 computer program Methods 0.000 claims description 13
- 230000004044 response Effects 0.000 claims description 7
- 230000001360 synchronised effect Effects 0.000 claims description 5
- 238000012544 monitoring process Methods 0.000 claims description 3
- 238000004891 communication Methods 0.000 abstract description 23
- 230000009286 beneficial effect Effects 0.000 abstract description 2
- 230000006870 function Effects 0.000 description 28
- 238000010586 diagram Methods 0.000 description 14
- 238000005516 engineering process Methods 0.000 description 7
- 230000003287 optical effect Effects 0.000 description 4
- 238000012545 processing Methods 0.000 description 4
- 230000000007 visual effect Effects 0.000 description 4
- 238000011161 development Methods 0.000 description 3
- 230000008569 process Effects 0.000 description 3
- 230000008859 change Effects 0.000 description 2
- 238000003745 diagnosis Methods 0.000 description 2
- 239000004973 liquid crystal related substance Substances 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000000644 propagated effect Effects 0.000 description 2
- 239000004065 semiconductor Substances 0.000 description 2
- 206010063385 Intellectualisation Diseases 0.000 description 1
- 230000002776 aggregation Effects 0.000 description 1
- 238000004220 aggregation Methods 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 238000013473 artificial intelligence Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000009434 installation Methods 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
- 230000003252 repetitive effect Effects 0.000 description 1
- 238000007493 shaping process Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/65—Updates
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/70—Software maintenance or management
- G06F8/71—Version control; Configuration management
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
Abstract
本发明提供一种服务注册管理方法、装置、设备及存储介质,该方法包括:获取各应用程序的服务信息,服务信息存储于预设第一内存容器,应用程序为分布式应用程序;将各应用程序的服务信息注册至服务注册中心,使服务信息存储至预设第二内存容器,预设第二内存容器配置于服务注册中心;若监测到应用程序存储于预设第一内存容器中的服务信息存在更新,则将更新后的服务信息发送至服务注册中心;待服务注册中心接收到更新后的服务信息后,将预设第二内存容器存储的同一应用程序的当前服务信息同步为更新后的服务信息。本发明不仅能通过服务注册中心统一管理各个应用程序,还能对应用程序进行监测,以利于快速定位应用程序间出现的通信问题。
Description
技术领域
本发明涉及服务注册技术领域,具体涉及一种服务注册管理方法、装置、设备及存储介质。
背景技术
随着汽车智能化的发展,软件定义汽车(Software Defined Vehicles,SDV)已经成趋势。智能汽车是一个具有超高复杂度的分布式系统,软件定义汽车的含义是通过软件的方式,动态改变分布式系统中网络节点之间的聚合关系,从而产生新的业务功能,即服务。由于分布式系统集成了大量来自不同服务的应用程序,这些应用程序复杂,需要确保他们之间通信的可靠性以及实时性,目前主流的解决方式为采用数据分发服务(DataDistribution Service,DDS)技术对应用程序进行集成,DDS是新一代分布式实时通信中间件协议,高实时性能、高可靠性能、开放式体系结构和发布/订阅端的非耦合性能,大大加速和简化了分布式系统的开发。在DDS通信中,应用程序中的服务通过主题(topic)进行标识,使应用程序之间根据相同的主题进行发布/订阅,或者订阅/通知的形式实现通信。
在相关技术中,为了丰富汽车能够支持的服务,通常采取的方式是在应用程序中增加新的主题,以支持更多不同的服务。然而,这种方式使应用程序中服务信息过于复杂,应用程序之间通信的服务数量庞大。一方面,难以对各应用程序进行统一管理;另一方面,在各应用程序互相通信的过程中,容易出现服务调用失败的情况,存在无法快速排查失败原因的问题。
发明内容
鉴于以上所述现有技术的缺点,本发明提供一种服务注册管理方法、装置及存储介质,以解决上述技术问题中的至少之一。
在第一方面,本发明提供了一种服务注册管理方法,包括:
获取各应用程序的服务信息,所述服务信息存储于预设第一内存容器,所述应用程序为分布式应用程序;
将各所述应用程序的所述服务信息注册至服务注册中心,使所述服务信息存储至预设第二内存容器,所述预设第二内存容器配置于所述服务注册中心;
若监测到所述应用程序存储于所述预设第一内存容器中的所述服务信息存在更新,则将更新后的所述服务信息发送至所述服务注册中心;
待所述服务注册中心接收到更新后的所述服务信息后,将所述预设第二内存容器存储的同一所述应用程序的当前所述服务信息同步为更新后的所述服务信息。
于本发明的一实施例中,在所述将所述应用程序的所述服务信息注册至服务注册中心,使所述服务信息存储至预设第二内存容器之后,还包括:
所述应用程序订阅所述服务注册中心的开关服务,所述开关服务包括响应名单、开关标识;
所述服务注册中心发布所述开关服务;
确定所述应用程序是否存在于订阅的所述开关服务中的所述响应名单;
若存在,则根据所述开关标识确定是否切换所述应用程序的开关状态;
若不存在,则所述应用程序不响应。
于本发明的一实施例中,所述将各所述应用程序的所述服务信息注册至服务注册中心,使所述服务信息存储至预设第二内存容器,包括:
若监测到所述应用程序离线或所述应用程序的所述开关状态为关闭,则使所述应用程序生成注销指令;
所述服务注册中心响应于所述注销指令,删除所述预设第二内存容器存储的同一所述应用程序的所述服务信息。
于本发明的一实施例中,在所述将所述应用程序的所述服务信息注册至服务注册中心,使所述服务信息存储至预设第二内存容器之后,还包括:
利用车端的数采中心将所述预设第二内存容器存储的所述服务信息转发至云端;
通过所述云端接收所述服务信息,并向所述服务注册中心反馈接收结果;
基于所述云端将所述服务信息发送至用户终端,以供用户查询。
于本发明的一实施例中,所述基于所述云端将所述服务信息发送至用户终端,以供用户查询,包括:
利用所述用户终端接收来自所述用户的查询指令,并将所述查询指令发送至所述云端;
通过所述云端响应所述查询指令,确定待查询的所述服务信息;
将待查询的所述服务信息发送至所述用户终端,以供所述用户查看。
于本发明的一实施例中,所述获取各应用的服务信息,包括:
创建多个服务,每个所述服务至少包括方法结构体与服务结构体,所述服务结构体包括服务名称、服务版本与事件类型,所述方法结构体包括方法名称与方法标识码;
根据每个所述服务的方法结构体与服务结构体将多个所述服务集成于应用结构体内,确定所述服务信息;
对所述应用程序进行初始化后,将所述服务信息配置于所述应用程序。
于本发明的一实施例中,所述若监测到所述应用程序存储于所述预设第一内存容器中的所述服务信息存在更新,则将更新后的所述服务信息发送至所述服务注册中心,包括:
监测所述应用程序的所述服务信息,以确定所述服务信息中集成的多个所述服务是否存在变化;
若存在,则根据变化后的所述多个服务对所述应用程序存储于所述预设第一内存容器的所述服务信息进行更新,直至同步为更新后的所述服务信息为止;
若不存在,则不对所述应用程序存储于所述预设第一内存容器的当前所述服务信息进行更新。
在第二方面,本发明还提供了一种服务注册管理装置,包括:
获取模块,配置为获取各应用程序的服务信息,所述服务信息存储于预设第一内存容器,所述应用程序为分布式应用程序;
注册模块,配置为将各所述应用程序的所述服务信息注册至服务注册中心,使所述服务信息存储至预设第二内存容器,所述预设第二内存容器配置于所述服务注册中心;
更新模块,配置为若监测到所述应用程序存储于所述预设第一内存容器中的所述服务信息存在更新,则将更新后的所述服务信息发送至所述服务注册中心;
同步模块,配置为待所述服务注册中心接收到更新后的所述服务信息后,将所述预设第二内存容器存储的同一所述应用程序的当前所述服务信息同步为更新后的所述服务信息。
在第三方面,本发明还提供了一种电子设备,包括:一个或多个处理器;存储装置,用于存储一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行时,使得所述一个或多个处理器实现如上述实施例中所述的服务注册管理方法。
在第四方面,本发明还提供了一种计算机可读存储介质,其上存储有计算机程序,当所述计算机程序被计算机的处理器执行时,使计算机执行如上述实施例中所述的服务注册管理方法。
本发明的有益效果:本发明提出了一种服务注册管理方法、装置、设备及存储介质。本方法通过将大量服务的服务信息集成为分布式应用程序,并将应用程序的服务信息注册至服务注册中心。不仅能够通过服务注册中心统一管理各个应用程序,还能通过服务注册中心监测应用程序的服务信息变化情况,使服务注册中心保持同步更新,以利于应用程序间出现通信问题时,快速定位问题。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本发明。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本发明的实施例,并与说明书一起用于解释本发明的原理。显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术者来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。在附图中:
图1是本发明的一示例性实施例示出的服务注册管理方法的实施环境示意图;
图2是本发明的一示例性实施例示出的服务注册管理方法相关的功能业务的架构示意图;
图3是本发明的一示例性实施例示出的服务注册管理方法的流程图;
图4是本发明的一示例性实施例示出的服务信息注册的流程图;
图5是本发明的一示例性实施例示出的服务信息注销的流程图;
图6是本发明的一示例性实施例示出的用户终端的可视化界面的示意图;
图7是本发明的一示例性实施例示出的上传服务信息至云端的流程图;
图8是本发明的一示例性实施例示出的服务注册管理装置的框图;
图9是本发明的一示例性实施例示出的适于用来实现本发明电子设备的计算机系统的结构示意图。
具体实施方式
以下将参照附图和优选实施例来说明本发明的实施方式,本领域技术人员可由本说明书中所揭露的内容轻易地了解本发明的其他优点与功效。本发明还可以通过另外不同的具体实施方式加以实施或应用,本说明书中的各项细节也可以基于不同观点与应用,在没有背离本发明的精神下进行各种修饰或改变。应当理解,优选实施例仅为了说明本发明,而不是为了限制本发明的保护范围。
需要说明的是,以下实施例中所提供的图示仅以示意方式说明本发明的基本构想,遂图式中仅显示与本发明中有关的组件而非按照实际实施时的组件数目、形状及尺寸绘制,其实际实施时各组件的型态、数量及比例可为一种随意的改变,且其组件布局型态也可能更为复杂。
在下文描述中,探讨了大量细节,以提供对本发明实施例的更透彻的解释,然而,对本领域技术人员来说,可以在没有这些具体细节的情况下实施本发明的实施例是显而易见的,在其他实施例中,以方框图的形式而不是以细节的形式来示出公知的结构和设备,以避免使本发明的实施例难以理解。
请参阅图1,为本发明的一示例性实施例示出的服务注册管理方法的实施环境示意图。
如图1所示,该实施环境包括车端101和云端102,将车端101和云端102进行网络连接。服务注册中心可以安装于车端101的驾驶域控制器中。车端101的车机所连接各域控制器相关的应用程序可以注册在服务注册中心,通过服务注册中心进行统一管理,并通过驾驶域控制器中的数采中心上传至云端102。云端102可以与用户终端(手机、车载娱乐系统和计算机等)建立通信,用户终端通过可视化界面将服务信息展示给用户,以供用户查看各应用程序的服务信息。需要理解的是,这里不限定该网络连接的具体连接方式,比如,可以通过3G(第三代的移动信息技术)、4G(第四代的移动信息技术)以及5G(第五代的移动信息技术)等无线网络通信方式连接。
如图1所示,本发明实施例中的云端102由服务器承载,该服务器可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式装置,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、CDN(Content DeliveryNetwork,内容分发网络)、以及大数据和人工智能平台等基础云计算服务的云服务器。
请参阅图2,为本发明的一示例性实施例示出的服务注册管理方法相关的功能业务的架构示意图。如图2所示,该架构整体包括了车端、云端和用户终端,其中,车端包括服务注册中心、数采中心、注册中心发布模块,用户终端包括电脑和手机。通过车端实现服务信息和云端的交互,车端中的注册中心发布端是DDS应用程序,每个DDS应用程序都具有发布服务信息的能力,图2中的服务信息数据等同于服务信息,DDS应用程序将自身服务信息发送至服务注册中心。车端中的服务注册中心可实现的功能包括服务信息注册功能,即接收DDS应用程序的服务信息,以完成服务信息的注册;开关注册功能,即向DDS应用程序发布开关服务;服务信息注销功能,即从服务注册中心删除离线或开关状态为关闭的已注册服务信息;上传服务信息功能,即将注册的服务信息上传至车端的数采中心。车端中的数采中心用于接收服务注册中心上传的服务信息,返回上传结果至服务注册中心,并将服务信息上传至云端。云端后接收到车端中数采中心上传的服务信息后,将返回上传结果至数采中心,并将服务信息提供给用户终端调用。
请参阅图3,为本发明的一示例性实施例示出的服务注册管理系统的流程图。该方法可以应用于图1所示的实施环境,并由该实施环境中的车端101具体执行。应理解的是,该方法也可以适用于其它的示例性实施环境,并由其它设备具体执行,本实施例不对该方法所适用的实施环境进行限制。
如图3所示,在一示例性的实施例中,服务注册管理方法至少包括步骤S310至步骤S340,详细介绍如下:
步骤S310,获取各应用程序的服务信息,服务信息存储于预设第一内存容器,应用程序为分布式应用程序。
首先需要说明的是,本发明中的应用程序为DDS应用程序。随着软件定义汽车这个大趋势的到来,车载软件的安装使用更加丰富,软件之间的通信也就更多更复杂,而目前主流的通信协议就包含了DDS通信协议,通过DDS技术能打通汽车中央网关、智能驾驶域和智能座舱域之间的通讯桥梁,简化车载软件,即DDS应用程序的开发和集成。DDS应用程序是分布式的应用程序,其以数据为中心,能够完全隐藏各应用程序的连接细节,可靠且安全的为汽车提供新的服务。DDS技术允许部署的一个或多个DDS域,其中,同一域内的应用程序通过在域的主题下发布/订阅来交换消息。例如,与车端功能相关应用程序在通信域ID为1的DDS域通信,那么将与服务注册中心相关功能的应用程序在DDS域的通信域ID设定为2,隔离车端功能相关应用程序和与服务注册中心相关功能的应用程序的通信,使应用程序只在对应DDS域中进行通信。
具体地,通过以下方式获取各应用程序的服务信息:
创建多个服务,每个服务至少包括方法结构体与服务结构体,服务结构体包括服务名称、服务版本与事件类型,方法结构体包括方法名称与方法标识码;根据每个服务的方法结构体与服务结构体将多个服务集成于应用结构体内,确定服务信息;对应用程序进行初始化后,将服务信息配置于应用程序。
在本发明的一个实施例中,预设第一内存容器是应用程序自身的内存。为了在丰富应用程序的功能的前提下,缓解因服务数量过多于占用应用程序的大量内存的问题,对服务的结构进行了调整,单个服务可能包括多个方法,以丰富单个服务的功能,进而丰富应用程序的功能。因此,本发明中的服务除了服务结构体,还可包括方法结构体,而应用程序的服务信息为多个服务集成的应用结构体。表1是关于服务信息的数据结构,相关数据如表1所示:
表1
节点名称 | 所属子节点 | 数据类型 | 数据含义 |
module_name | 无 | 字符串 | 应用名称 |
service_info | 无 | Json数组 | 服务列表 |
topic | service_name | Json对象 | 事件类型 |
name | topic | 字符串 | 服务名称 |
version | topic | 字符串 | 服务版本 |
methods | service_name | Json数组 | 方法列表 |
name | methods | 字符串 | 方法名称 |
hash_id | methods | 整形 | 方法hashid |
由表1可知,服务信息的数据结构为应用结构体,包括应用名称、服务列表;服务列表中包括多个服务,每个服务的服务结构体包括服务名称、服务版本、事件类型和方法列表;方法列表中包括多个方法,方法的方法结构体包括方法名称和方法hash id,其中,方法hash id为方法标识码。需要注意的是,上述服务结构体包括的事件类型为发布和订阅,如果服务没有设定多个方法,那么该服务的服务结构体不包括方法列表。
步骤S320,将各应用程序的服务信息注册至服务注册中心,使服务信息存储至预设第二内存容器,预设第二内存容器配置于服务注册中心。
具体地,基于DDS通信协议,使各应用程序和服务注册中心点对点通信,以使各应用程序将自身服务信息发送至服务注册中心。
请参阅图4,为本发明的一示例性实施例示出的服务信息注册的流程图。如图4所示,在应用程序中集成了服务注册中心相关的代码,应用程序具备了发布服务信息的能力。各应用程序和服务注册中心通过DDS端点,发现对方,以完成应用程序和服务注册中心的匹配,从而分别触发各自端点的回调函数,使应用程序通过回调函数将自身服务信息发送至服务注册中心,完成注册。另外,当更新后的服务信息存储于预设第一内存容器时,更新后的服务信息对应的应用程序将会主动通知服务注册中心,使预设第二内存容器存储的同一应用程序的当前服务信息同步至更新后的服务信息。
在本发明的一个实施例中,应用程序在分布式的环境下运行,当应用程序退出运行环境时,其注册在服务注册中心的应用程序就不再需要了,还占用第二内存容器的存储空间,因此需要提供一个将应用程序的应用程序从服务注册中心删除的功能,并封装成接口函数,以方便调用。具体地,对完成注册的应用程序进行实时监测,若监测到应用程序离线或应用程序的开关状态为关闭,则使应用程序生成注销指令;服务注册中心响应于注销指令,删除预设第二内存容器存储的同一应用程序的服务信息。
请参阅图5,为本发明的一示例性实施例示出的服务信息注销的流程图。如图5所示,若服务注册中心发现所匹配的应用程序的端点减少时,则代表存在应用程序离线或开关状态切换至关闭的情况,需要注销这些应用程序,从删除服务注册中心存储的这些应用程序的服务信息。
在本发明的一个实施例中,为了避免完成注册的应用程序执行一些重复和无意义的操作,设定一个服务,以通过服务注册中心管理各应用程序的开关状态,其中,该服务为开关服务。该开关服务支持的操作包括:(1)一键开关所有应用程序注册功能开关;(2)一键开关某台设备中所有应用程序注册功能开关;(3)单独开关某台指定设备中某个指定应用程序的注册功能开关。
具体地,应用程序订阅服务注册中心的开关服务,开关服务包括响应名单、开关标识;服务注册中心发布开关服务;确定应用程序是否存在于订阅的开关服务中的响应名单;若存在,则根据开关标识确定是否切换应用程序的开关状态;若不存在,则应用程序不响应。表2是关于开关服务的数据结构,相关数据如表2所示:
表2
节点名称 | 所属子节点 | 数据类型 | 数据含义 |
strModuleName | 无 | 字符串 | 应用名称 |
bOpen | 无 | boolean | 应用的服务信息 |
由表2可知,在开关服务的数据结构中,包括一个字符串数据strModuleName和一个bool数据bOpen,其中,strModuleName表示响应名单,参数是应用名称,通过该数据可以指定应用程序;bOpen表示的应用服务信息是关于开关状态的,参数的开关标识,例如,当开关标识为true时表示打开应用程序的注册功能,为false时表示关闭应用程序的注册功能。需要注意的是,该数据为空时表示全部应用程序。
在本发明的一个实施例中,应用程序完成注册后,还包括:利用车端的数采中心将预设第二内存容器存储的服务信息转发至云端;通过云端接收服务信息,并向服务注册中心反馈接收结果;基于云端将服务信息发送至用户终端;利用用户终端接收来自用户的查询指令,并将查询指令发送至云端;通过云端响应查询指令,确定待查询的服务信息;将待查询的服务信息发送至用户终端,以供用户查看。
请参阅图6,为本发明的一示例性实施例示出的用户终端的可视化界面的示意图。如图6所示,通过用户终端的可视化界面,可以使用户清楚查看到将车辆中所有的应用程序的服务信息的注册情况,以及给各应用程序、应用程序下的多个服务、服务下的多个方法之间的关系,以利于各应用程序之间出现通信问题时,能够快速分析原因,定位问题,大大降低问题的诊断时间,提高诊断效率。
步骤S330,若监测到应用程序存储于预设第一内存容器中的服务信息存在更新,则将更新后的服务信息发送至服务注册中心。
具体地,监测应用程序的服务信息,以确定服务信息中集成的多个服务是否存在变化;若存在,则根据变化后的多个服务对应用程序存储于预设第一内存容器的服务信息进行更新,直至同步为更新后的服务信息为止;若不存在,则不对应用程序存储于预设第一内存容器的当前服务信息进行更新。
在本发明的一个实施例中,完成注册的应用程序在运行中,若其服务信息包括的方法列表发生改变,即新增不同服务或删除已存在服务,则应用程序将同步更新存储于第一预设内存容器中的服务信息,并发送更新后的服务信息至服务注册中心。
步骤S340,待服务注册中心接收到更新后的服务信息后,将预设第二内存容器存储的同一应用程序的当前服务信息同步为更新后的服务信息。
在本发明的一个实施例中,服务注册中心接收到更新后的服务信息后,还需要将其上传至云端,以使云端存储的服务信息同步。
图7是本发明的一示例性实施例示出的上传服务信息至云端的流程图。如图7所示,为了保持服务信息更新的及时性,且服务注册中心自身并不具备直接将服务信息上传至云端的能力,所以需将服务注册中心部署在车端的驾驶域控制器中。驾驶域控制中的数采中心具有与云端通信的能力,服务注册中心可以将接收到的服务信息以应用程序的形式发送至数采中心,然后通过数采中心将服务信息转发至云端。其中,数采中心是驾驶域中实现数据采集功能的应用程序。
在本发明的一个实施例中,可以将本方法步骤中所实现的功能封装成函数,方便直接调用。
请参阅图8,为本发明的一示例性实施例示出的服务注册管理装置的框图。该装置可以应用于图1所示的实施环境,并具体配置在车端101中。该装置也可以适用于其它的示例性实施环境,并具体配置在其它设备中,本实施例不对该装置所适用的实施环境进行限制。
参照图8所示,该示例性的服务注册管理装置包括:获取模块810、注册模块820、更新模块830和同步模块840。
获取模块810,配置为获取各应用程序的服务信息,服务信息存储于预设第一内存容器,应用程序为分布式应用程序;
注册模块820,配置为将各应用程序的服务信息注册至服务注册中心,使服务信息存储至预设第二内存容器,预设第二内存容器配置于服务注册中心;
更新模块830,配置为若监测到应用程序存储于预设第一内存容器中的服务信息存在更新,则将更新后的服务信息发送至服务注册中心;
同步模块840,配置为待服务注册中心接收到更新后的服务信息后,将预设第二内存容器存储的同一应用程序的当前服务信息同步为更新后的服务信息。
需要说明的是,上述实施例所提供的服务注册管理装置与上述实施例所提供的服务注册管理方法属于同一构思,其中各个步骤执行操作的具体方式已经在系统实施例中进行了详细描述,此处不再赘述。
本发明的实施例还提供了一种电子设备,包括:一个或多个处理器;存储装置,用于存储一个或多个程序,当一个或多个程序被一个或多个处理器执行时,使得电子设备实现上述各个实施例中提供的服务注册管理方法。
图9示出了适于用来实现本发明实施例的电子设备的计算机系统的结构示意图。需要说明的是,图9示出的电子设备的计算机系统900仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。
如图9所示,计算机系统900包括中央处理单元(Central Processing Unit,CPU)901,其可以根据存储在只读存储器(Read-OnlyMemory,ROM)902中的程序或者从储存部分908加载到随机访问存储器(Random Access Memory,RAM)903中的程序而执行各种适当的动作和处理,例如执行上述实施例中的方法。在RAM 903中,还存储有系统操作所需的各种程序和数据。CPU 901、ROM 902以及RAM 903通过总线904彼此相连。输入/输出(Input/Output,I/O)接口905也连接至总线904。
以下部件连接至I/O接口905:包括键盘、鼠标等的输入部分906;包括诸如阴极射线管(Cathode Ray Tube,CRT)、液晶显示器(Liquid Crystal Display,LCD)等以及扬声器等的输出部分907;包括硬盘等的储存部分908;以及包括诸如LAN(Local AreaNetworK,局域网)卡、调制解调器等的网络接口卡的通信部分909。通信部分909经由诸如因特网的网络执行通信处理。驱动器910也根据需要连接至I/O接口905。可拆卸介质911,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器910上,以便于从其上读出的计算机程序根据需要被安装入储存部分908。
特别地,根据本发明的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本发明的实施例包括一种计算机程序产品,其包括承载在计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的计算机程序。在这样的实施例中,该计算机程序可以通过通信部分909从网络上被下载和安装,和/或从可拆卸介质911被安装。在该计算机程序被中央处理单元(CPU)901执行时,执行本发明的系统中限定的各种功能。
本发明的实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被计算机的处理器执行时,使计算机执行如前的服务注册管理方法。该计算机可读存储介质可以是上述实施例中描述的电子设备中所包含的,也可以是单独存在,而未装配入该电子设备中。
需要说明的是,本发明实施例所示的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(Erasable Programmable Read Only Memory,EPROM)、闪存、光纤、便携式紧凑磁盘只读存储器(Compact Disc Read-Only Memory,CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本发明中,计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的计算机程序。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的计算机程序可以用任何适当的介质传输,包括但不限于:无线、有线等等,或者上述的任意合适的组合。
附图中的流程图和框图,图示了按照本发明各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。其中,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,上述模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图或流程图中的每个方框、以及框图或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
上述实施例仅示例性说明本发明的原理及其功效,而非用于限制本发明。任何熟悉此技术的人士皆可在不违背本发明的精神及范畴下,对上述实施例进行修饰或改变。因此,但凡所属技术领域中具有通常知识者在未脱离本发明所揭示的精神与技术思想下所完成的一切等效修饰或改变,仍应由本发明的权利要求所涵盖。
Claims (10)
1.一种服务注册管理方法,其特征在于,包括:
获取各应用程序的服务信息,所述服务信息存储于预设第一内存容器,所述应用程序为分布式应用程序;
将各所述应用程序的所述服务信息注册至服务注册中心,使所述服务信息存储至预设第二内存容器,所述预设第二内存容器配置于所述服务注册中心;
若监测到所述应用程序存储于所述预设第一内存容器中的所述服务信息存在更新,则将更新后的所述服务信息发送至所述服务注册中心;
待所述服务注册中心接收到更新后的所述服务信息后,将所述预设第二内存容器存储的同一所述应用程序的当前所述服务信息同步为更新后的所述服务信息。
2.如权利要求1所述的服务注册管理方法,其特征在于,在所述将所述应用程序的所述服务信息注册至服务注册中心,使所述服务信息存储至预设第二内存容器之后,还包括:
所述应用程序订阅所述服务注册中心的开关服务,所述开关服务包括响应名单、开关标识;
所述服务注册中心发布所述开关服务;
确定所述应用程序是否存在于订阅的所述开关服务中的所述响应名单;
若存在,则根据所述开关标识确定是否切换所述应用程序的开关状态;
若不存在,则所述应用程序不响应。
3.如权利要求2所述的服务注册管理方法,其特征在于,所述将各所述应用程序的所述服务信息注册至服务注册中心,使所述服务信息存储至预设第二内存容器,包括:
若监测到所述应用程序离线或所述应用程序的所述开关状态为关闭,则使所述应用程序生成注销指令;
所述服务注册中心响应于所述注销指令,删除所述预设第二内存容器存储的同一所述应用程序的所述服务信息。
4.如权利要求1所述的服务注册管理方法,其特征在于,在所述将所述应用程序的所述服务信息注册至服务注册中心,使所述服务信息存储至预设第二内存容器之后,还包括:
利用车端的数采中心将所述预设第二内存容器存储的所述服务信息转发至云端;
通过所述云端接收所述服务信息,并向所述服务注册中心反馈接收结果;
基于所述云端将所述服务信息发送至用户终端,以供用户查询。
5.如权利要求4所述的服务注册管理方法,其特征在于,所述基于所述云端将所述服务信息发送至用户终端,以供用户查询,包括:
利用所述用户终端接收来自所述用户的查询指令,并将所述查询指令发送至所述云端;
通过所述云端响应所述查询指令,确定待查询的所述服务信息;
将待查询的所述服务信息发送至所述用户终端,以供所述用户查看。
6.如权利要求1至5任一所述的服务注册管理方法,其特征在于,所述获取各应用的服务信息,包括:
创建多个服务,每个所述服务至少包括方法结构体与服务结构体,所述服务结构体包括服务名称、服务版本与事件类型,所述方法结构体包括方法名称与方法标识码;
根据每个所述服务的方法结构体与服务结构体将多个所述服务集成于应用结构体内,确定所述服务信息;
对所述应用程序进行初始化后,将所述服务信息配置于所述应用程序。
7.如权利要求6所述的服务注册管理方法,其特征在于,所述若监测到所述应用程序存储于所述预设第一内存容器中的所述服务信息存在更新,则将更新后的所述服务信息发送至所述服务注册中心,包括:
监测所述应用程序的所述服务信息,以确定所述服务信息中集成的多个所述服务是否存在变化;
若存在,则根据变化后的所述多个服务对所述应用程序存储于所述预设第一内存容器的所述服务信息进行更新,直至同步为更新后的所述服务信息为止;
若不存在,则不对所述应用程序存储于所述预设第一内存容器的当前所述服务信息进行更新。
8.一种服务注册管理装置,其特征在于,包括:
获取模块,用于获取各应用程序的服务信息,所述服务信息存储于预设第一内存容器,所述应用程序为分布式应用程序;
注册模块,用于将各所述应用程序的所述服务信息注册至服务注册中心,使所述服务信息存储至预设第二内存容器,所述预设第二内存容器配置于所述服务注册中心;
更新模块,用于若监测到所述应用程序存储于所述预设第一内存容器中的所述服务信息存在更新,则将更新后的所述服务信息发送至所述服务注册中心;
同步模块,用于待所述服务注册中心接收到更新后的所述服务信息后,将所述预设第二内存容器存储的同一所述应用程序的当前所述服务信息同步为更新后的所述服务信息。
9.一种电子设备,其特征在于,所述电子设备包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行时,使得所述电子设备实现如权利要求1至7中任一项所述的服务注册管理方法。
10.一种计算机可读存储介质,其特征在于,其上存储有计算机程序,所述计算机程序用于使计算机执行如权利要求1至7中任一项所述的服务注册管理方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310374621.5A CN116302001A (zh) | 2023-04-10 | 2023-04-10 | 服务注册管理方法、装置、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310374621.5A CN116302001A (zh) | 2023-04-10 | 2023-04-10 | 服务注册管理方法、装置、设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116302001A true CN116302001A (zh) | 2023-06-23 |
Family
ID=86790553
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310374621.5A Pending CN116302001A (zh) | 2023-04-10 | 2023-04-10 | 服务注册管理方法、装置、设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116302001A (zh) |
-
2023
- 2023-04-10 CN CN202310374621.5A patent/CN116302001A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110311983B (zh) | 服务请求的处理方法、装置、系统、电子设备及存储介质 | |
CN111345008B (zh) | 移动边缘主机服务通知方法和装置 | |
CN109150662B (zh) | 消息传输方法、分布式系统、设备、介质和无人车 | |
CN111131348A (zh) | 一种车联网系统及其运行方法 | |
CN110008267B (zh) | 一种数据处理的系统及方法 | |
CN109905431A (zh) | 消息处理方法及系统、存储介质、电子设备 | |
CN113645287B (zh) | 汽车报文存储方法及装置、汽车报文存储系统 | |
CN111274032B (zh) | 任务处理系统及方法、存储介质 | |
CN110780945B (zh) | 一种异构区块链可插拔的跨链桥接方法、设备和存储介质 | |
CN116302001A (zh) | 服务注册管理方法、装置、设备及存储介质 | |
CN116800835A (zh) | 一种监控数据采集方法、装置、设备及介质 | |
CN114979144B (zh) | 云边通信方法、装置及电子设备 | |
CN114980457B (zh) | 一种车灯控制方法及装置、电子设备和计算机可读存储介质 | |
WO2008010666A1 (en) | System and method for managing domain-state information | |
CN115877819A (zh) | 整车远程诊断管理方法、装置、设备及介质 | |
CN113076380B (zh) | 数据同步方法、装置、系统、设备及存储介质 | |
CN105353701B (zh) | 一种可靠的分布式报警系统和方法 | |
CN114679472A (zh) | 通信系统、方法、装置、存储介质及电子设备 | |
CN112328417A (zh) | 一种嵌入式多程序通讯方法和系统 | |
CN107147694B (zh) | 一种信息处理方法和装置 | |
CN105955830B (zh) | 一种应用模块间的通信方法及系统 | |
CN112995095A (zh) | 数据处理方法、装置及计算机可读存储介质 | |
CN116193472B (zh) | 车载网络管理方法、装置、电子设备及存储介质 | |
CN116244099B (zh) | 嵌入式系统内进程通讯方法、装置、电子设备和存储介质 | |
JP7189104B2 (ja) | 情報処理システム、及び情報処理システムの制御方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |