CN110795109A - 一种功能扩展方法、装置及电子设备 - Google Patents
一种功能扩展方法、装置及电子设备 Download PDFInfo
- Publication number
- CN110795109A CN110795109A CN201911025546.1A CN201911025546A CN110795109A CN 110795109 A CN110795109 A CN 110795109A CN 201911025546 A CN201911025546 A CN 201911025546A CN 110795109 A CN110795109 A CN 110795109A
- Authority
- CN
- China
- Prior art keywords
- target node
- program
- node
- function
- extended
- 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
- 238000000034 method Methods 0.000 title claims abstract description 96
- 230000006870 function Effects 0.000 claims description 418
- 230000001960 triggered effect Effects 0.000 claims description 22
- 238000005538 encapsulation Methods 0.000 claims description 7
- 230000008859 change Effects 0.000 abstract description 5
- 238000010586 diagram Methods 0.000 description 21
- 238000012544 monitoring process Methods 0.000 description 19
- 238000004088 simulation Methods 0.000 description 14
- 238000003745 diagnosis Methods 0.000 description 10
- 238000011084 recovery Methods 0.000 description 8
- 238000004891 communication Methods 0.000 description 4
- 230000008569 process Effects 0.000 description 4
- 238000013500 data storage Methods 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 230000005540 biological transmission Effects 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 230000004927 fusion Effects 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 238000007726 management method Methods 0.000 description 2
- 230000006978 adaptation Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000007664 blowing Methods 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 230000008878 coupling Effects 0.000 description 1
- 238000010168 coupling process Methods 0.000 description 1
- 238000005859 coupling reaction Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 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
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Security & Cryptography (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本公开关于一种功能扩展方法、装置及电子设备,用以解决现有技术中对业务***的服务代码进行功能扩展的效率较低的问题,本公开实施例接收中心节点发送的包含目标节点标识以及扩展功能信息的通知消息;根据扩展功能信息与封装程序之间的对应关系,确定通知消息中包含的扩展功能信息对应的封装程序;将确定出的封装程序发送给目标节点标识对应的目标节点,以使目标节点通过运行所述封装程序执行对应的扩展功能。本公开实施例提供的功能扩展方法,不需要变更本地服务代码,不侵入原服务代码,可以在原服务运行的情况下为业务***扩展功能,不需要将业务下线,缩短业务***上线新功能的周期,提高对服务代码进行功能扩展的效率。
Description
技术领域
本公开涉及计算机技术领域,特别涉及一种功能扩展方法、装置及电子设备。
背景技术
随着业务***的不断发展,业务***的功能需要更加多样化,则其对应的服务代码规模不断变大。当存在不同业务逻辑耦合复杂或者需要扩展业务功能等各类问题时,传统的单机开发模式存在越来越明显的弊端。
为业务***扩展功能属于服务治理的范畴,业务开发人员可以对业务***对应的服务代码进行增强,实现业务***功能的扩展。在对业务***进行增强时,需要在业务***对应的服务代码中侵入相应的代码。目前,在服务代码中侵入代码实现业务***的功能或者扩展业务***的功能,需要将业务下线,才能对业务***对应的服务代码进行代码变更,且若业务***对应的服务代码打包部署时,对业务代码进行代码更改的周期比较长,导致扩展业务***功能的周期变长。
综上所述,现有技术中对业务***的服务代码进行功能扩展的效率较低。
发明内容
本公开提供一种功能扩展方法、装置及电子设备,用以解决现有技术中对业务***的服务代码进行功能扩展的效率较低的问题。本公开的技术方案如下:
根据本公开实施例的第一方面,提供一种功能扩展方法,包括:
接收中心节点发送的包含目标节点标识以及扩展功能信息的通知消息;其中,所述目标节点标识以及所述扩展功能信息为所述中心节点根据触发的扩展指令确定的;
根据扩展功能信息与封装程序之间的对应关系,确定所述通知消息中包含的所述扩展功能信息对应的封装程序;
将确定出的所述封装程序发送给所述目标节点标识对应的目标节点,以使所述目标节点通过运行所述封装程序执行对应的扩展功能。
在一种可能的实现方式中,在将确定出的所述封装程序发送给所述目标节点标识对应的目标节点之后,还包括:
获取所述目标节点通过运行所述封装程序执行对应的扩展功能的执行结果,并将获取到的执行结果返回给所述中心节点,以使所述中心节点呈现所述执行结果。
根据本公开实施例的第二方面,提供一种功能扩展方法,包括:
接收代理节点发送的封装程序;其中,所述封装程序为所述代理节点根据中心节点发送的通知消息中包含的扩展功能信息以及扩展功能信息与封装程序之间的对应关系确定的;
通过运行所述封装程序执行对应的扩展功能。
在一种可能的实现方式中,所述通过运行所述封装程序执行对应的扩展功能,包括:
通过类加载器加载所述封装程序,并通过运行所述封装程序执行对应的扩展功能。
在一种可能的实现方式中,所述通过类加载器加载所述封装程序,并通过运行所述封装程序执行对应的扩展功能,包括:
若接收到所述封装程序时未执行其他功能,则通过类加载器加载所述封装程序,并通过运行所述封装程序执行对应的扩展功能;或
若接收到所述封装程序时正在执行其他功能,则在所述其他功能执行完成后,通过类加载器加载所述封装程序,并通过运行所述封装程序执行对应的扩展功能;或
若接收到所述封装程序时正在执行其他功能,则暂停执行所述其他功能,通过类加载器加载所述封装程序,并通过运行所述封装程序执行对应的扩展功能。
在一种可能的实现方式中,在暂停执行所述其他功能,通过类加载器加载所述封装程序,并通过运行所述封装程序执行对应的扩展功能之后,还包括:
在所述封装程序运行结束后恢复执行所述其他功能。
根据本公开实施例的第三方面,提供一种功能扩展方法,包括:
根据触发的扩展指令确定目标节点标识以及扩展功能信息;
将包含所述目标节点标识以及扩展功能信息的通知消息发送给代理节点,以使所述代理节点将所述扩展功能信息对应的封装程序发送给所述目标节点标识对应的目标节点,便于所述目标节点通过运行所述封装程序执行对应的扩展功能。
在一种可能的实现方式中,所述将包含所述目标节点标识以及扩展功能信息的通知消息发送给代理节点之后,还包括:
接收所述代理节点返回的所述目标节点运行所述封装程序执行对应的扩展功能的执行结果,并呈现所述执行结果。
根据本公开实施例的第四方面,提供一种功能扩展装置,包括:
第一接收模块,被配置为执行接收中心节点发送的包含目标节点标识以及扩展功能信息的通知消息;其中,所述目标节点标识以及所述扩展功能信息为所述中心节点根据触发的扩展指令确定的;
第一确定模块,被配置为执行根据扩展功能信息与封装程序之间的对应关系,确定所述通知消息中包含的所述扩展功能信息对应的封装程序;
第一发送模块,被配置为执行将确定出的所述封装程序发送给所述目标节点标识对应的目标节点,以使所述目标节点通过运行所述封装程序执行对应的扩展功能。
在一种可能的实现方式中,所述第一发送模块还被配置为执行获取所述目标节点通过运行所述封装程序执行对应的扩展功能的执行结果,并将获取到的执行结果返回给所述中心节点,以使所述中心节点呈现所述执行结果。
根据本公开实施例的第五方面,提供一种功能扩展装置,包括:
第二接收模块,被配置为执行接收代理节点发送的封装程序;其中,所述封装程序为所述代理节点根据中心节点发送的通知消息中包含的扩展功能信息以及扩展功能信息与封装程序之间的对应关系确定的;
运行模块,被配置为执行通过运行所述封装程序执行对应的扩展功能。
在一种可能的实现方式中,所述运行模块被配置为执行通过类加载器加载所述封装程序,并通过运行所述封装程序执行对应的扩展功能。
在一种可能的实现方式中,所述运行模块被配置为执行若接收到所述封装程序时未执行其他功能,则通过类加载器加载所述封装程序,并通过运行所述封装程序执行对应的扩展功能;或
若接收到所述封装程序时正在执行其他功能,则在所述其他功能执行完成后,通过类加载器加载所述封装程序,并通过运行所述封装程序执行对应的扩展功能;或
若接收到所述封装程序时正在执行其他功能,则暂停执行所述其他功能,通过类加载器加载所述封装程序,并通过运行所述封装程序执行对应的扩展功能。
在一种可能的实现方式中,所述运行模块被配置为执行在所述封装程序运行结束后恢复执行所述其他功能。
根据本公开实施例的第六方面,提供一种功能扩展装置,包括:
第二确定模块,被配置为执行根据触发的扩展指令确定目标节点标识以及扩展功能信息;
第二发送模块,被配置为执行将包含所述目标节点标识以及扩展功能信息的通知消息发送给代理节点,以使所述代理节点将所述扩展功能信息对应的封装程序发送给所述目标节点标识对应的目标节点,便于所述目标节点通过运行所述封装程序执行对应的扩展功能。
在一种可能的实现方式中,还包括:
第三接收模块,被配置为执行接收所述代理节点返回的所述目标节点运行所述封装程序执行对应的扩展功能的执行结果,并将呈现所述执行结果。
根据本公开实施例的第七方面,提供一种电子设备,包括:存储器,用于存储可执行指令;
处理器,用于读取并执行所述存储器中存储的可执行指令,以实现如本公开实施例第一方面中任一项所述的功能扩展方法。
根据本公开实施例的第八方面,提供一种电子设备,包括:存储器,用于存储可执行指令;
处理器,用于读取并执行所述存储器中存储的可执行指令,以实现如本公开实施例第二方面中任一项所述的功能扩展方法。
根据本公开实施例的第九方面,提供一种电子设备,包括:存储器,用于存储可执行指令;
处理器,用于读取并执行所述存储器中存储的可执行指令,以实现如本公开实施例第三方面中任一项所述的功能扩展方法。
根据本公开实施例的第十方面,提供一种非易失性存储介质,当所述存储介质中的指令由功能扩展装置的处理器执行时,使得功能扩展装置能够执行本公开实施例第一方面中所述的功能扩展方法。
根据本公开实施例的第十一方面,提供一种非易失性存储介质,当所述存储介质中的指令由功能扩展装置的处理器执行时,使得功能扩展装置能够执行本公开实施例第二方面中所述的功能扩展方法。
根据本公开实施例的第十二方面,提供一种非易失性存储介质,当所述存储介质中的指令由功能扩展装置的处理器执行时,使得功能扩展装置能够执行本公开实施例第三方面中所述的功能扩展方法。
本公开的实施例提供的技术方案至少带来以下有益效果:
本公开实施例提供的功能扩展方法,将可运行的封装程序存储在代理节点中,当需要扩展功能时,中心节点响应触发的扩展指令向代理节点发送通知消息,中心节点将可运行的封装程序发送给目标节点即可实现功能的扩展,不需要变更本地服务代码,不侵入原服务代码,可以在原服务运行的情况下为业务***扩展功能,不需要将业务下线,缩短业务***上线新功能的周期,提高对服务代码进行功能扩展的效率。本公开实施例中心节点、代理节点和目标节点可以位于同一个服务器或者部署在不同的服务器;中心节点和代理节点之间可以采用有线连接方式通信或者采用无线通信。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理,并不构成对本公开的不当限定。
图1是根据一示例性实施例示出的功能扩展方法的应用场景示意图;
图2是根据一示例性实施例示出的一种功能扩展***的框架示意图;
图3是根据一示例性实施例示出的一种功能扩展方法的示意图;
图4是根据一示例性实施例示出的一种功能扩展方法的交互流程图;
图5是根据一示例性实施例示出的一种代理节点侧功能扩展方法的流程图;
图6是根据一示例性实施例示出的一种目标节点侧功能扩展方法的流程图;
图7是根据一示例性实施例示出的一种中心节点侧功能扩展方法的流程图;
图8是根据一示例性实施例示出的一种功能扩展装置框图;
图9是根据一示例性实施例示出的另一种功能扩展装置框图;
图10是根据一示例性实施例示出的另一种功能扩展装置框图;
图11是根据一示例性实施例示出的一种电子设备的框图;
图12是根据一示例性实施例示出的另一种电子设备的框图;
图13是根据一示例性实施例示出的一种电子设备的框图。
具体实施方式
为了使本领域普通人员更好地理解本公开的技术方案,下面将结合附图,对本公开实施例中的技术方案进行清楚、完整地描述。
需要说明的是,本公开的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本公开的实施例能够以除了在这里图示或描述的那些以外的顺序实施。以下示例性实施例中所描述的实施方式并不代表与本公开相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本公开的一些方面相一致的装置和方法的例子。
以下,对本公开实施例中的部分用语进行解释说明,以便于本领域技术人员理解。
(1)本公开实施例中术语“多个”是指两个或两个以上,其它量词与之类似。
(2)本公开实施例中术语“类加载器”是指主要对类的请求提供服务,当需要某类时,由类加载器返回这个类的对象。类加载器负责载入***的所有资源(类,文件,来自网络的字节流等),通过类加载器从而将资源载入。
(3)本公开实施例中术语“端口”是英文port的意译,是设备与外界通讯交流的出口。端口可分为虚拟端口和物理端口,其中虚拟端口指计算机内部或交换机路由器内的端口;物理端口又称为接口,是可见端口。
(4)本公开实施例中术语“IP”是指IP地址,是IP协议提供的一种统一的地址格式,它为互联网上的每一个网络和每一台主机分配一个逻辑地址,以此来屏蔽物理地址的差异。
目前,当需要扩展业务***的功能时,业务开发人员可以通过服务治理平台为业务***对应的服务代码中侵入相应的代码,改变原来的服务代码的执行逻辑,使其可以扩展新的功能。例如,一台服务器的本地服务代码没有监控功能,当业务人员想为此服务器扩展监控功能时,需要变更本地服务代码,使变更后的本地服务代码可以实现监控功能。但是更改原服务代码的过程中,需要停止运行该服务器,对服务器的本地服务代码重新编写,且当原服务代码为打包部署时,更改原服务代码所需要的时间会很长,导致新功能上线的周期较长。
本公开实施例公开一种功能扩展方法,一种可选的应用场景如图1所示,在用户10需要对目标节点13的功能进行扩展时,在中心节点11触发扩展指令,中心节点11根据用户10触发的扩展指令确定目标节点标识以及扩展功能信息,中心节点11向代理节点12发送包含目标节点标识以及扩展功能信息的通知消息,代理节点12将扩展功能信息对应的封装程序发送给目标节点标识对应的目标节点13,通知目标节点13运行接收到的封装程序实现功能扩展。
本公开实施例提供的功能扩展方法,将可运行的封装程序存储在代理节点中,当需要扩展功能时,中心节点响应触发的扩展指令向代理节点发送通知消息,中心节点将可运行的封装程序发送给目标节点即可实现功能的扩展,不需要变更本地服务代码,不侵入原服务代码,可以在原服务运行的情况下为业务***扩展功能,不需要将业务下线,缩短业务***上线新功能的周期,提高对服务代码进行功能扩展的效率。
本公开实施例中心节点、代理节点和目标节点可以位于同一个服务器或者部署在不同的服务器;中心节点和代理节点之间可以采用有线连接方式通信或者采用无线通信。
此外,本公开实施例提供的功能扩展方法,可以通过不同的代理节点为不同的目标节点扩展多个功能,并可以将多个目标节点的功能扩展结果集中呈现在中心节点上,便于业务开发人员对目标节点的集中式管理。
为了使本公开的目的、技术方案和优点更加清楚,下面将结合附图对本公开作进一步地详细描述,显然,所描述的实施例仅仅是本公开一部分实施例,而不是全部的实施例。基于本公开中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本公开保护的范围。
下面对本公开实施例作进一步详细描述。
图2是根据一示例性实施例示出的一种功能扩展***的框架示意图,如图2所示,包括中心节点20、至少一个代理节点21以及至少一个目标节点22。
中心节点20,用于根据触发的扩展指令确定目标节点标识以及扩展功能信息;将包含目标节点标识以及扩展功能信息的通知消息发送给代理节点21,以使代理节点21将扩展功能信息对应的封装程序发送给目标节点标识对应的目标节点22,便于目标节点22通过运行封装程序执行对应的扩展功能。
代理节点21,用于接收中心节点20发送的包含目标节点标识以及扩展功能信息的通知消息;根据扩展功能信息与封装程序之间的对应关系,确定通知消息中包含的扩展功能信息对应的封装程序;将确定出的封装程序发送给目标节点标识对应的目标节点22,以使目标节点22通过运行封装程序执行对应的扩展功能。
目标节点22,用于接收代理节点21发送的封装程序;通过运行所述封装程序执行对应的扩展功能。
需要说明的是,本公开实施例中需要扩展功能的目标节点可以是服务器,也可以是服务器中某个服务进程,即本公开实施例提供的功能扩展方法可以为某个服务器扩展功能,也可以为服务器中的某个服务进程扩展功能。
在实施中,中心节点20根据触发的扩展指令确定目标节点标识以及扩展功能信息。其中,扩展指令的触发由用户执行,本公开实施例中用户可以是业务开发人员,业务开发人员触发的扩展指令可以是为某一个目标节点扩展功能的扩展指令,也可以是为多个目标节点扩展功能的扩展指令,且为目标节点扩展功能的数目可以为一个或者多个,在本公开实施例中不做限定。
例如,业务开发人员触发的扩展指令可以是为目标节点A扩展功能1;也可以是为目标节点A扩展功能1和功能2;也可以是为目标节点A、目标节点B都扩展功能1;还可以是为目标节点A扩展功能1、为目标节点B扩展功能2。
扩展指令可以是通过中心节点的显示界面触发,扩展指令中可以包含需要进行功能扩展的目标节点标识以及需要对目标节点扩展的扩展功能信息。
中心节点20根据扩展指令确定目标节点标识以及扩展功能信息时,在一种可选的实施方式中,目标节点标识可以为目标节点的IP和端口,扩展功能信息可以为具体的扩展功能的名称或者标识。例如,扩展指令是为目标节点A扩展功能1,假设目标节点A对应的IP为12.345.67.890,端口为8080,则目标节点20根据扩展指令确定目标节点标识为“12.345.67.890+8080”,扩展功能信息为“扩展功能1”。
中心节点20在确定目标节点标识以及扩展功能信息之后,向代理节点21发送包含目标节点标识以及扩展功能信息的通知消息;
例如,中心节点20向代理节点21发送的通知消息可以是“12.345.67.890+8080+扩展功能1”。
其中,中心节点20可以从多个代理节点21中随机选择一个代理节点21发送包含目标节点标识以及扩展功能信息的通知消息;或者中心节点20可以选择与目标节点22在同一台物理机器上的代理节点21发送包含目标节点标识以及扩展功能信息的通知消息。
代理节点21在接收到中心节点20发送的通知消息之后,根据通知消息中的扩展功能信息确定扩展功能信息对应的封装程序。
在一种可选的实施方式中,代理节点21中存储有各种可扩展功能对应的封装程序,当接收到来自中心节点的通知消息后,根据扩展功能信息与封装程序之间的对应关系,确定通知消息中的扩展功能信息对应的封装程序,之后将确定出的封装程序发送给通知消息中携带的目标节点标识对应的目标节点22。
例如,代理节点21中存储有扩展功能1对应的封装程序1、扩展功能2对应的封装程序2、扩展功能3对应的封装程序3、扩展功能4对应的封装程序4、扩展功能5对应的封装程序5。假设,代理节点21接收到的通知消息为“12.345.67.890+8080+扩展功能1”,代理节点21可以根据通知消息中的扩展功能信息“扩展功能1”确定出其对应的封装程序1。将确定出的封装程序1发送给IP为12.345.67.890、端口为8080的目标节点,即代理节点将确定出的封装程序1发送给目标节点A。
需要说明的是,在代理节点21在根据目标节点标识将封装程序发送给目标节点22时,可能会出现发送失败的情况;例如代理节点根据目标节点标识未找到目标节点,或者由于通信线路的问题,代理节点向目标节点发送封装程序失败等。若发送失败,则代理节点21向中心节点20反馈发送失败的消息,以使中心节点20呈现功能扩展失败的结果。若发送成功,在一种可能的实施方式中,代理节点21还可以监控目标节点22对封装程序的运行情况。
若代理节点21向目标节点22发送封装程序发送成功,目标节点22在接收到封装程序之后,需要运行接收到的封装程序,执行对应的扩展功能。本公开实施例可以利用类加载器运行接收到的封装程序。
一种可选的实施方式为,目标节点22根据下列方式运行接收到的封装程序执行对应的扩展功能:
目标节点22通过类加载器加载封装程序,并通过运行封装程序执行对应的扩展功能。
实施中,目标节点22在接收到代理节点21发送的封装程序之后,通过类加载器加载接收到的封装程序,然后运行加载的封装程序,执行封装程序对应的功能。例如,在目标节点A接收到代理节点发送的封装程序1之后,通过类加载器加载封装程序1,然后运行封装程序1完成功能扩展,扩展的功能为封装程序1对应的扩展功能1。
在实施中,目标节点22在接收到代理节点21发送的封装程序时,目标节点22的运行状态可能不同,针对目标节点22不同的运行状态,运行通过类加载器加载的封装程序的情况可能不同。下面针对目标节点22不同的运行状态说明目标节点22执行扩展功能的方法。
情况一:目标节点22在接收到代理节点21发送的封装程序时,未执行其他功能。
一种可选的实施方式为,目标节点22在接收到代理节点21发送的封装程序后,直接通过类加载器加载封装程序,并通过运行封装程序执行对应的扩展功能。
实施中,在接收到代理节点21发送的封装程序时,若目标节点22并未执行其他功能,则可以立即通过类加载器加载封装程序并运行封装程序执行对应的扩展功能。例如,目标节点A在接收代理节点发送的扩展功能1对应的封装程序1时,并没有运行其他已有的功能,则目标节点A在接收到封装程序1的之后立即通过类加载器加载封装程序1并执行对应的扩展功能1完成功能扩展。
情况二:目标节点22在接收到代理节点21发送的封装程序时,正在执行其他功能。
在该情况二下,目标节点22可以根据下列方式执行扩展功能:
方式1、目标节点22在其他功能执行完成后,通过类加载器加载封装程序,并通过运行封装程序执行对应的扩展功能。
实施中,在接收到代理节点21发送的封装程序时,若目标节点22正在执行其他功能,则可以等待正在执行的功能执行完成之后,通过类加载器加载封装程序并运行封装程序执行对应的扩展功能。
例如,目标节点A在接收代理节点发送的扩展功能1对应的封装程序1时,目标节点A正在运行其他已有的功能,假设目标节点A已有的功能为功能a、功能b、功能c,目标节点A在接收到扩展功能1对应的封装程序1时,目标节点A正在运行功能b,则在功能b运行完之后,目标节点A通过类加载器加载封装程序1并执行对应的扩展功能1完成功能扩展。或者,目标节点A在运行完功能b后运行功能c,在运行功能c运行完之后,目标节点A通过类加载器加载封装程序1并执行对应的扩展功能1完成功能扩展。
方式2、目标节点22暂停执行其他功能,通过类加载器加载封装程序,并通过运行封装程序执行对应的扩展功能。
实施中,在接收到代理节点21发送的封装程序时,若目标节点22正在执行其他功能,则可以暂停正在执行的功能,通过类加载器加载封装程序并运行封装程序执行对应的扩展功能。
需要说明的是,目标节点22在封装程序运行结束后恢复执行其他功能。
实施中,目标节点在运行扩展功能对应的封装程序后,继续运行之前暂停的功能。
例如,目标节点A在接收代理节点发送的扩展功能1对应的封装程序1时,目标节点A正在运行其他已有的功能,假设目标节点A已有的功能为功能a、功能b、功能c,目标节点A在接收到扩展功能1对应的封装程序1时,目标节点A正在运行功能b,则目标节点A暂停运行功能b,通过类加载器加载封装程序1并执行对应的扩展功能1完成功能扩展。在封装程序1运行完之后,目标节点A恢复执行功能b。
实施中,在代理节点21会监控目标节点22运行封装程序的情况并将其反馈给中心节点20。
一种可选的实施方式为,代理节点21获取目标节点22通过运行封装程序执行对应的扩展功能的执行结果,并将获取到的执行结果返回给中心节点22。
实施中,代理节点21监控目标节点运行封装程序的情况,将目标节点22运行封装程序的结果反馈给中心节点20。具体的,可以是将目标节点运行封装程序成功或者失败的结果反馈给中心节点,例如,目标节点A成功加载并运行封装程序1,则将目标节点A扩展功能1成功的消息反馈给中心节点;或者可以是将目标节点运行封装程序的程序运行结果反馈给中心节点,例如,在目标节点A中扩展诊断功能,使目标节点A可以诊断自身的错误语句,则在目标节点A加载并运行诊断功能对应的封装程序之后,代理节点获取诊断出来的目标节点A中的错误语句,并将诊断出来的错误语句返回给中心节点。
中心节点20接收代理节点21返回的目标节点运行封装程序执行对应的扩展功能的执行结果,并呈现执行结果。
其中,中心节点20将执行结果呈现给用户,本公开实施例中用户可以是业务开发人员。
需要说明的是,本公开实施例中提供的“代理节点”可以是多个,且每个代理节点中存储的可扩展功能对应的封装程序类型可以相同,也可以不同,或者,每个代理节点中存储所有的可扩展功能对应的封装程序。当需要为目标节点扩展代理节点中预先存储的可扩展功能之外的功能时,只需要在代理节点中心增加该功能对应封装程序,即可利用本公开实施例提供的功能扩展方法为目标节点扩展功能。
下面通过几种具体的可扩展功能来说明本公开实施例提供的功能扩展方法。
本公开实施例提供的可扩展功能包括:监控、日志采集、诊断、故障模拟、灰度、熔断与恢复。
具体的,对这几种扩展功能进行介绍:
监控功能:用来监控目标节点的内存以及目标节点的CPU使用情况、或者反应用户访问数量、http请求的执行数量、平均执行时间等,可选的目标节点可以是服务器。当目标节点没有监控功能时,可以通过本公开实施例提供的方法为目标节点扩展监控功能。
日志采集功能:采集目标节点的运行日志用以对日志数据进行分析处理,从而对目标节点进行完善等。当目标节点没有日志采集功能,可以通过本公开实施例提供的方法为目标节点扩展日志采集功能;或者目标节点的日志采集功能只能采集目标节点中部分服务的日志时,可以通过本公开实施例提供的方法使目标节点的日志采集功能可以采集目标节点中全部服务的日志。
诊断功能:可以用来诊断目标节点所运行的程序中的错误语句用以对错误语句进行修改。可以将用于诊断的程序进行封装,通过本公开实施例提供的方法将封装好的诊断程序加载到目标节点中,诊断目标节点中的错误语句。
故障模拟功能:模拟故障,用于验证目标节点的可靠性。例如,需要在目标节点中设置故障,可以提前编译一段故障程序,通过本公开实施例提供的方法将封装好的故障程序加载到目标节点中去,进行故障模拟。
灰度发布功能:是一种能够平滑过渡的发布方式。比如,上线新功能后,先让用户中的一部分使用新功能,再逐步扩大范围,直到让所有用户使用新功能。灰度发布可以保证整体新功能的稳定,在新功能上线初始就可以发现、调整问题,以免造成无法挽回的影响。在需要扩大新功能使用范围时,可以将使用范围扩大后对应的程序进行封装,通过本公开实施例提供的方法将封装好的程序加载到目标节点中去,进行灰度发布。
熔断与恢复:熔断一般是指应用***中,由于某些原因使得服务出现了过载现象,为防止造成整个***故障,从而采用的一种保护措施,熔断也称为过载保护,恢复是指对于被熔断的服务的请求,一段时间后允许部分请求通过,逐渐恢复被熔断的服务。本公开实施例可以根据中心节点监控到的目标节点的数据调整目标节点熔断与恢复的条件,以保证目标节点的正常运行;或者将目标节点的兜底程序进行封装,当目标节点发生故障时,通过本公开实施例提供的方法将兜底程序加载到封装程序中,保证目标节点的正常运行。
需要说明的是,本公开实施例中提供的可扩展功能包括但不限于上述几种,任何可以通过本公开实施例提供的功能扩展方法扩展的功能都在本公开的保护范围之内。
每个代理节点可以存储上述六种扩展功能中的至少一种,例如:代理节点1中存储有“监控”、“日志采集”对应的封装程序;代理节点2中存储有“诊断”、“故障模拟”、“灰度”对应的封装程序;代理节点3中存储有“监控”、“日志采集”、“诊断”、“灰度”、“熔断与恢复”对应的封装程序;代理节点4和代理节点5中均存储有“监控”“日志采集”“诊断”“故障模拟”“灰度”“熔断与恢复”对应的封装程序,本公开实施例对此不做限定。
为了清楚的描述本公开实施例的功能扩展方法,以两个代理节点为例,分别为代理节点1、代理节点2,两个代理节点中均存储有“监控”“日志采集”“诊断”“故障模拟”“灰度”“熔断与恢复”对应的封装程序。
图3是根据一示例性实施例示出的一种功能扩展方法的示意图,如图3所示,假设,业务开发人员通过中心节点的显示界面触发扩展指令,扩展指令是:为目标节点1扩展监控功能、日志采集功能;为目标节点2扩展诊断功能、故障模拟;为目标节点3扩展灰度范围以及改变熔断与恢复条件。其中,代理节点1和目标节点1在同一台物理机器上,代理节点2、目标节点2和目标节点3在同一台物理机器上。
中心节点根据扩展指令确定目标节点标识以及扩展功能信息,例如,确定的目标节点标识以及扩展功能信息为“10.305.60.800+8000+监控功能、日志采集功能”、“15.355.60.500+8220+诊断功能、故障模拟”和“15.355.60.500+8330+灰度、熔断与恢复”。其中,“10.305.60.800+8000”为目标节点1的标识,“15.355.60.500+8220”为目标节点2的标识,“15.355.60.500+8330”为目标节点3的标识。
中心节点将包含目标节点标识以及扩展功能信息的通知消息发送给代理节点,实施中,可以是将“10.305.60.800+8000+监控功能、日志采集功能”发送给代理节点1,将“15.355.60.500+8220+诊断功能、故障模拟”和“15.355.60.500+8330+灰度、熔断与恢复”发送给代理节点2。
代理节点1在接收到中心节点发送的通知消息之后,根据通知消息“10.305.60.800+8000+监控功能、日志采集功能”确定将监控功能对应的封装程序以及日志采集功能对应的封装程序发送给IP为10.305.60.800、端口为8000的目标节点1。代理节点2在接收到中心节点发送的通知消息之后,根据通知消息“15.355.60.500+8220+诊断功能、故障模拟”和“15.355.60.500+8330+灰度、熔断与恢复”确定诊断功能对应的封装程序以及故障模拟对应的封装程序发送给IP为15.355.60.500端口为8220的目标节点2;将灰度对应的封装程序以及熔断与恢复对应的封装程序发送给IP为15.355.60.500端口为8330的目标节点3。
需要说明的是,上述实施例仅是示例的,中心节点也可以将为目标节点1进行功能扩展的通知消息发送给代理节点2,通过代理节点2为目标节点1进行功能扩展。
假设目标节点1接收到代理节点1发送的监控功能对应的封装程序以及日志采集功能对应的封装程序时,未运行其他功能,则目标节点1立即通过类加载器加载监控功能对应的封装程序以及日志采集功能对应的封装程序,并运行上述封装程序,代理节点1监控目标节点1的执行结果,并将执行结果发送给中心节点。例如,代理节点监控目标节点1成功运行监控功能对应的封装程序以及日志采集功能对应的封装程序,向中心节点返回下列消息:
“10.305.60.800+8000监控功能扩展成功、日志采集功能扩展成功”。
假设目标节点2接收到代理节点2发送的诊断功能对应的封装程序以及故障模拟对应的封装程序时,正在运行其他功能,则目标节点2可以在运行完当前正在运行的功能后,通过类加载器加载诊断功能对应的封装程序以及故障模拟对应的封装程序,并运行上述封装程序,代理节点2监控目标节点2的执行结果,并将执行结果发送给中心节点。例如,代理节点监控目标节点2成功运行诊断功能对应的封装程序以及故障模拟对应的封装程序,向中心节点返回下列消息:
“15.355.60.500+8220诊断功能扩展成功,错误语句为:第1行、第186至255行;日志采集功能扩展成功”。
目标节点3接收到代理节点2发送的灰度功能对应的封装程序以及熔断与恢复对应的封装程序时,成功接收灰度功能对应的封装程序,熔断与恢复对应的封装程序接收失败,且接收到灰度功能对应的封装程序时正在运行其他功能,则目标节点3暂停正在运行的功能,并通过类加载器加载灰度功能对应的封装程序并运行,在运行结束灰度功能对应的封装程序之后,恢复运行之前暂停的其他功能。代理节点2监控目标节点3的执行结果,并将执行结果发送给中心节点。例如,代理节点监控目标节点3成功运行灰度功能对应的封装程序,向中心节点返回下列消息:
“15.355.60.500+8330灰度功能扩展成功、熔断与恢复封装程序发送失败”。
中心节点呈现代理节点1、代理节点2返回的执行结果,本公开实施例中可以将执行结果呈现给业务开发人员。
图4是根据一示例性实施例示出的一种功能扩展方法的交互流程图,本公开实施例以目标节点接收到封装程序时未运行其他功能为例说明本公开实施例提供的功能扩展方法。如图4所示,包括以下步骤:
在步骤S401中,中心节点响应触发的扩展指令,根据扩展指令确定目标节点标识以及扩展功能信息;
在步骤S402中,中心节点将包含目标节点标识以及扩展功能信息的通知消息发送给代理节点;
在步骤S403中,代理节点根据扩展功能信息与封装程序之间的对应关系,确定通知消息中的扩展功能信息对应的封装程序;
在步骤S404中,代理节点将确定出的封装程序发送给通知消息中目标节点标识对应的目标节点;
在步骤S405中,目标节点通过类加载器加载代理节点发送的封装程序,并运行封装程序执行对应的扩展功能;
在步骤S406中,代理节点获取目标节点运行封装程序执行对应的扩展功能的执行结果;
在步骤S407中,代理节点将获取到的执行结果返回给中心节点;
在步骤S408中,中心节点将接收到的代理节点返回的执行结果并呈现。
图5是根据一示例性实施例示出的一种功能扩展装置框图,该装置可应用于代理节点。参照图5,该装置包括第一接收模块500,第一确定模块501,第一发送模块502。
第一接收模块500,被配置为执行接收中心节点发送的包含目标节点标识以及扩展功能信息的通知消息;其中,所述目标节点标识以及所述扩展功能信息为所述中心节点根据触发的扩展指令确定的;
第一确定模块501,被配置为执行根据扩展功能信息与封装程序之间的对应关系,确定所述通知消息中包含的所述扩展功能信息对应的封装程序;
第一发送模块502,被配置为执行将确定出的所述封装程序发送给所述目标节点标识对应的目标节点,以使所述目标节点通过运行所述封装程序执行对应的扩展功能。
在一种可能的实现方式中,所述第一发送模块502还被配置为执行获取所述目标节点通过运行所述封装程序执行对应的扩展功能的执行结果,并将获取到的执行结果返回给所述中心节点,以使所述中心节点呈现所述执行结果。
图6是根据一示例性实施例示出的另一种功能扩展装置框图,该装置可应用于目标节点。参照图6,该装置包括第二接收模块600,运行模块601。
第二接收模块600,被配置为执行接收代理节点发送的封装程序;其中,所述封装程序为所述代理节点根据中心节点发送的通知消息中包含的扩展功能信息以及扩展功能信息与封装程序之间的对应关系确定的;
运行模块601,被配置为执行通过运行所述封装程序执行对应的扩展功能。
在一种可能的实现方式中,所述运行模块601被配置为执行通过类加载器加载所述封装程序,并通过运行所述封装程序执行对应的扩展功能。
在一种可能的实现方式中,所述运行模块601被配置为执行若接收到所述封装程序时未执行其他功能,则通过类加载器加载所述封装程序,并通过运行所述封装程序执行对应的扩展功能;或
若接收到所述封装程序时正在执行其他功能,则在所述其他功能执行完成后,通过类加载器加载所述封装程序,并通过运行所述封装程序执行对应的扩展功能;或
若接收到所述封装程序时正在执行其他功能,则暂停执行所述其他功能,通过类加载器加载所述封装程序,并通过运行所述封装程序执行对应的扩展功能。
在一种可能的实现方式中,所述运行模块601被配置为执行在所述封装程序运行结束后恢复执行所述其他功能。
图7是根据一示例性实施例示出的另一种功能扩展装置框图,该装置可应用于中心节点。参照图7,该装置包括第二确定模块700,第二发送模块701。
第二确定模块700,被配置为执行根据触发的扩展指令确定目标节点标识以及扩展功能信息;
第二发送模块701,被配置为执行将包含所述目标节点标识以及扩展功能信息的通知消息发送给代理节点,以使所述代理节点将所述扩展功能信息对应的封装程序发送给所述目标节点标识对应的目标节点,便于所述目标节点通过运行所述封装程序执行对应的扩展功能。
在一种可能的实现方式中,还包括:第三接收模块,被配置为执行接收所述代理节点返回的所述目标节点运行所述封装程序执行对应的扩展功能的执行结果,并呈现所述执行结果。
关于上述实施例中的装置,其中各个模块执行请求的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。
图8是根据一示例性实施例示出的一种电子设备800的框图,该电子设备包括:
处理器810;
用于存储所述处理器810可执行指令的存储器820;
其中,所述处理器810被配置为执行所述指令,以实现本公开实施例中的代理节点侧功能扩展方法。
图9是根据一示例性实施例示出的另一种电子设备900的框图,该电子设备包括:
处理器910;
用于存储所述处理器910可执行指令的存储器920;
其中,所述处理器910被配置为执行所述指令,以实现本公开实施例中目标节点侧的功能扩展方法。
图10是根据一示例性实施例示出的一种电子设备1000的框图,该电子设备包括:
处理器1010;
用于存储所述处理器1010可执行指令的存储器1020;
其中,所述处理器1010被配置为执行所述指令,以实现本公开实施例中中心节点侧的功能扩展方法。
在示例性实施例中,还提供了一种包括指令的非易失性存储介质,例如包括指令的存储器820,上述指令可由电子设备800的处理器810执行以完成上述方法。可选地,存储介质可以是非临时性计算机可读存储介质,例如,所述非临时性计算机可读存储介质可以是ROM、随机存取存储器(RAM)、CD-ROM、磁带、软盘和光数据存储设备等。
在示例性实施例中,还提供了一种包括指令的非易失性存储介质,例如包括指令的存储器920,上述指令可由电子设备900的处理器910执行以完成上述方法。可选地,存储介质可以是非临时性计算机可读存储介质,例如,所述非临时性计算机可读存储介质可以是ROM、随机存取存储器(RAM)、CD-ROM、磁带、软盘和光数据存储设备等。
在示例性实施例中,还提供了一种包括指令的非易失性存储介质,例如包括指令的存储器1020,上述指令可由电子设备1000的处理器1010执行以完成上述方法。可选地,存储介质可以是非临时性计算机可读存储介质,例如,所述非临时性计算机可读存储介质可以是ROM、随机存取存储器(RAM)、CD-ROM、磁带、软盘和光数据存储设备等。
基于同一发明构思,本公开实施例中还提供了一种功能扩展方法,由于该方法对应的是本公开实施例功能扩展***对应的代理节点,并且该方法解决问题的原理与该***相似,因此该方法的实施可以参见***的实施,重复之处不再赘述。
图11是根据一示例性实施例示出的一种代理节点侧功能扩展方法的流程图,如图11所示,包括以下步骤:
在步骤S1101中,接收中心节点发送的包含目标节点标识以及扩展功能信息的通知消息;
其中,所述目标节点标识以及所述扩展功能信息为所述中心节点根据触发的扩展指令确定的;
在步骤S1102中,根据扩展功能信息与封装程序之间的对应关系,确定所述通知消息中包含的所述扩展功能信息对应的封装程序;
在步骤S1103中,将确定出的所述封装程序发送给所述目标节点标识对应的目标节点,以使所述目标节点通过运行所述封装程序执行对应的扩展功能。
在一种可能的实现方式中,在将确定出的所述封装程序发送给所述目标节点标识对应的目标节点之后,还包括:
获取所述目标节点通过运行所述封装程序执行对应的扩展功能的执行结果,并将获取到的执行结果返回给所述中心节点,以使所述中心节点呈现所述执行结果。
基于同一发明构思,本公开实施例中还提供了一种功能扩展方法,由于该方法对应的是本公开实施例功能扩展***对应的目标节点,并且该方法解决问题的原理与该***相似,因此该方法的实施可以参见***的实施,重复之处不再赘述。
图12是根据一示例性实施例示出的一种目标节点侧功能扩展方法的流程图,如图12所示,包括以下步骤:
在步骤S1201中,接收代理节点发送的封装程序;
其中,所述封装程序为所述代理节点根据中心节点发送的通知消息中包含的扩展功能信息以及扩展功能信息与封装程序之间的对应关系确定的;
在步骤S1202中,通过运行所述封装程序执行对应的扩展功能。
在一种可能的实现方式中,所述通过运行所述封装程序执行对应的扩展功能,包括:
通过类加载器加载所述封装程序,并通过运行所述封装程序执行对应的扩展功能。
在一种可能的实现方式中,所述通过类加载器加载所述封装程序,并通过运行所述封装程序执行对应的扩展功能,包括:
若接收到所述封装程序时未执行其他功能,则通过类加载器加载所述封装程序,并通过运行所述封装程序执行对应的扩展功能;或
若接收到所述封装程序时正在执行其他功能,则在所述其他功能执行完成后,通过类加载器加载所述封装程序,并通过运行所述封装程序执行对应的扩展功能;或
若接收到所述封装程序时正在执行其他功能,则暂停执行所述其他功能,通过类加载器加载所述封装程序,并通过运行所述封装程序执行对应的扩展功能。
在一种可能的实现方式中,在暂停执行所述其他功能,通过类加载器加载所述封装程序,并通过运行所述封装程序执行对应的扩展功能之后,还包括:
在所述封装程序运行结束后恢复执行所述其他功能。
基于同一发明构思,本公开实施例中还提供了一种功能扩展方法,由于该方法对应的是本公开实施例功能扩展***对应的中心节点,并且该方法解决问题的原理与该***相似,因此该方法的实施可以参见***的实施,重复之处不再赘述。
图13是根据一示例性实施例示出的一种中心节点侧功能扩展方法的流程图,如图13所示,包括以下步骤:
在步骤S1301中,根据触发的扩展指令确定目标节点标识以及扩展功能信息;
在步骤S1302中,将包含所述目标节点标识以及扩展功能信息的通知消息发送给代理节点,以使所述代理节点将所述扩展功能信息对应的封装程序发送给所述目标节点标识对应的目标节点,便于所述目标节点通过运行所述封装程序执行对应的扩展功能。
在一种可能的实现方式中,所述将包含所述目标节点标识以及扩展功能信息的通知消息发送给代理节点之后,还包括:
接收所述代理节点返回的所述目标节点运行所述封装程序执行对应的扩展功能的执行结果,并呈现所述执行结果。
本公开实施例还提供一种计算机程序产品,当所述计算机程序产品在电子设备上运行时,使得所述电子设备执行实现本公开实施例上述任意一项功能扩展方法或任意一项功能扩展方法任一可能涉及的方法。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本公开的其它实施方案。本公开旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由下面的权利要求指出。
应当理解的是,本公开并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本公开的范围仅由所附的权利要求来限制。
Claims (10)
1.一种功能扩展方法,其特征在于,该方法包括:
接收中心节点发送的包含目标节点标识以及扩展功能信息的通知消息;其中,所述目标节点标识以及所述扩展功能信息为所述中心节点根据触发的扩展指令确定的;
根据扩展功能信息与封装程序之间的对应关系,确定所述通知消息中包含的所述扩展功能信息对应的封装程序;
将确定出的所述封装程序发送给所述目标节点标识对应的目标节点,以使所述目标节点通过运行所述封装程序执行对应的扩展功能。
2.如权利要求1所述的方法,其特征在于,在将确定出的所述封装程序发送给所述目标节点标识对应的目标节点之后,还包括:
获取所述目标节点通过运行所述封装程序执行对应的扩展功能的执行结果,并将获取到的执行结果返回给所述中心节点,以使所述中心节点呈现所述执行结果。
3.一种功能扩展方法,其特征在于,该方法包括:
接收代理节点发送的封装程序;其中,所述封装程序为所述代理节点根据中心节点发送的通知消息中包含的扩展功能信息以及扩展功能信息与封装程序之间的对应关系确定的;
通过运行所述封装程序执行对应的扩展功能。
4.如权利要求3所述的方法,其特征在于,所述通过运行所述封装程序执行对应的扩展功能,包括:
通过类加载器加载所述封装程序,并通过运行所述封装程序执行对应的扩展功能。
5.一种功能扩展方法,其特征在于,该方法包括:
根据触发的扩展指令确定目标节点标识以及扩展功能信息;
将包含所述目标节点标识以及扩展功能信息的通知消息发送给代理节点,以使所述代理节点将所述扩展功能信息对应的封装程序发送给所述目标节点标识对应的目标节点,便于所述目标节点通过运行所述封装程序执行对应的扩展功能。
6.一种功能扩展装置,其特征在于,包括:
第一接收模块,被配置为执行接收中心节点发送的包含目标节点标识以及扩展功能信息的通知消息;其中,所述目标节点标识以及所述扩展功能信息为所述中心节点根据触发的扩展指令确定的;
第一确定模块,被配置为执行根据扩展功能信息与封装程序之间的对应关系,确定所述通知消息中包含的所述扩展功能信息对应的封装程序;
第一发送模块,被配置为执行将确定出的所述封装程序发送给所述目标节点标识对应的目标节点,以使所述目标节点通过运行所述封装程序执行对应的扩展功能。
7.一种功能扩展装置,其特征在于,包括:
第二接收模块,被配置为执行接收代理节点发送的封装程序;其中,所述封装程序为所述代理节点根据中心节点发送的通知消息中包含的扩展功能信息以及扩展功能信息与封装程序之间的对应关系确定的;
运行模块,被配置为执行通过运行所述封装程序执行对应的扩展功能。
8.一种功能扩展装置,其特征在于,包括:
第二确定模块,被配置为执行根据触发的扩展指令确定目标节点标识以及扩展功能信息;
第二发送模块,被配置为执行将包含所述目标节点标识以及扩展功能信息的通知消息发送给代理节点,以使所述代理节点将所述扩展功能信息对应的封装程序发送给所述目标节点标识对应的目标节点,便于所述目标节点通过运行所述封装程序执行对应的扩展功能。
9.一种电子设备,其特征在于,包括:
处理器;
用于存储所述处理器可执行指令的存储器;
其中,所述处理器被配置为执行所述指令,以实现根据权利要求1至权利要求5中任一项所述的功能扩展方法。
10.一种存储介质,其特征在于,当所述存储介质中的指令由功能扩展电子设备的处理器执行时,使得功能扩展电子设备能够执行根据权利要求1至权利要求5中任一项所述的功能扩展方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911025546.1A CN110795109A (zh) | 2019-10-25 | 2019-10-25 | 一种功能扩展方法、装置及电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911025546.1A CN110795109A (zh) | 2019-10-25 | 2019-10-25 | 一种功能扩展方法、装置及电子设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN110795109A true CN110795109A (zh) | 2020-02-14 |
Family
ID=69441385
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911025546.1A Pending CN110795109A (zh) | 2019-10-25 | 2019-10-25 | 一种功能扩展方法、装置及电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110795109A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115514665A (zh) * | 2022-08-31 | 2022-12-23 | 北京达佳互联信息技术有限公司 | 业务扩展方法、装置、电子设备及存储介质 |
Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040034860A1 (en) * | 2002-08-15 | 2004-02-19 | Microsoft Corporation | Dynamically extensible application program framework including message and notification routing |
CN1976289A (zh) * | 2006-12-22 | 2007-06-06 | 中国建设银行股份有限公司 | 一种基于分布式网络的程序部署方法和*** |
CN101499931A (zh) * | 2009-03-13 | 2009-08-05 | 中兴通讯股份有限公司 | 基于分布式环境的功能扩展方法和*** |
CN104765621A (zh) * | 2014-01-02 | 2015-07-08 | 国际商业机器公司 | 一种在集群节点中部署程序的方法和*** |
CN104834534A (zh) * | 2015-06-09 | 2015-08-12 | 北京奇虎科技有限公司 | 扩展应用程序功能的方法、装置及*** |
WO2017097122A1 (zh) * | 2015-12-08 | 2017-06-15 | 阿里巴巴集团控股有限公司 | 信息处理方法、装置、***及终端设备 |
CN107077358A (zh) * | 2014-09-25 | 2017-08-18 | 甲骨文国际公司 | 用于在分布式计算环境中支持可执行代码的动态部署的***和方法 |
CN107465548A (zh) * | 2017-08-17 | 2017-12-12 | 北京云纵信息技术有限公司 | 代码的部署方法和装置 |
CN107479869A (zh) * | 2017-06-28 | 2017-12-15 | 中国建设银行股份有限公司 | 实现功能扩展的方法及*** |
CN108334379A (zh) * | 2018-01-05 | 2018-07-27 | 北京明略软件***有限公司 | 一种页面扩展功能的实现方法及实现装置 |
CN109710428A (zh) * | 2018-12-27 | 2019-05-03 | 杭州数梦工场科技有限公司 | 一种实现类的动态调用方法及装置 |
-
2019
- 2019-10-25 CN CN201911025546.1A patent/CN110795109A/zh active Pending
Patent Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040034860A1 (en) * | 2002-08-15 | 2004-02-19 | Microsoft Corporation | Dynamically extensible application program framework including message and notification routing |
CN1976289A (zh) * | 2006-12-22 | 2007-06-06 | 中国建设银行股份有限公司 | 一种基于分布式网络的程序部署方法和*** |
CN101499931A (zh) * | 2009-03-13 | 2009-08-05 | 中兴通讯股份有限公司 | 基于分布式环境的功能扩展方法和*** |
CN104765621A (zh) * | 2014-01-02 | 2015-07-08 | 国际商业机器公司 | 一种在集群节点中部署程序的方法和*** |
CN107077358A (zh) * | 2014-09-25 | 2017-08-18 | 甲骨文国际公司 | 用于在分布式计算环境中支持可执行代码的动态部署的***和方法 |
CN104834534A (zh) * | 2015-06-09 | 2015-08-12 | 北京奇虎科技有限公司 | 扩展应用程序功能的方法、装置及*** |
WO2017097122A1 (zh) * | 2015-12-08 | 2017-06-15 | 阿里巴巴集团控股有限公司 | 信息处理方法、装置、***及终端设备 |
CN107479869A (zh) * | 2017-06-28 | 2017-12-15 | 中国建设银行股份有限公司 | 实现功能扩展的方法及*** |
CN107465548A (zh) * | 2017-08-17 | 2017-12-12 | 北京云纵信息技术有限公司 | 代码的部署方法和装置 |
CN108334379A (zh) * | 2018-01-05 | 2018-07-27 | 北京明略软件***有限公司 | 一种页面扩展功能的实现方法及实现装置 |
CN109710428A (zh) * | 2018-12-27 | 2019-05-03 | 杭州数梦工场科技有限公司 | 一种实现类的动态调用方法及装置 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115514665A (zh) * | 2022-08-31 | 2022-12-23 | 北京达佳互联信息技术有限公司 | 业务扩展方法、装置、电子设备及存储介质 |
CN115514665B (zh) * | 2022-08-31 | 2023-11-21 | 北京达佳互联信息技术有限公司 | 业务扩展方法、装置、电子设备及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP7105930B2 (ja) | 警報方法および警報装置 | |
EP3082296B1 (en) | Method and apparatus for visualized operation and maintenance of network | |
CN107544783B (zh) | 一种数据更新方法、装置及*** | |
CN111800354B (zh) | 消息处理方法及装置、消息处理设备及存储介质 | |
CN108347476B (zh) | 跨机房数据同步方法、装置以及服务器 | |
CN109788068B (zh) | 心跳状态信息上报方法、装置和设备及计算机存储介质 | |
CN103095518A (zh) | 覆盖率测试处理方法、装置、覆盖率测试服务器及*** | |
US20200327045A1 (en) | Test System and Test Method | |
CN110138577B (zh) | 集群创建方法、第一服务器以及可读存储介质 | |
EP3335374B1 (en) | Automatic symptom data collection in cloud deployment | |
CN106357449A (zh) | 一种zedis分布式缓存方法 | |
US10931513B2 (en) | Event-triggered distributed data collection in a distributed transaction monitoring system | |
CN106406975A (zh) | 桌面云***的测试方法及装置 | |
US20230214229A1 (en) | Multi-tenant java agent instrumentation system | |
CN112306755B (zh) | 一种基于微前端架构的高可用性实现方法和*** | |
CN114884838A (zh) | Kubernetes组件的监控方法及服务器 | |
CN110795109A (zh) | 一种功能扩展方法、装置及电子设备 | |
US11539612B2 (en) | Testing virtualized network functions | |
CN114338687A (zh) | 中间件管理方法和服务器 | |
CN115883310A (zh) | 服务部署方法、服务部署***、电子设备及存储介质 | |
CN111464394B (zh) | 一种节点监控方法、装置以及存储介质 | |
CN113726575A (zh) | 前端项目自动化上线方法、装置、服务器和存储介质 | |
CN112068935A (zh) | kubernetes程序部署监控方法、装置以及设备 | |
CN111026503B (zh) | 一种基于虚拟化的遥感卫星地面站监控方法和*** | |
CN114726789A (zh) | 流量管理、配置流量管理策略的方法、装置、设备及介质 |
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 |