CN117608677B - 插件的生成方法、云服务***及服务访问方法 - Google Patents
插件的生成方法、云服务***及服务访问方法 Download PDFInfo
- Publication number
- CN117608677B CN117608677B CN202310581979.5A CN202310581979A CN117608677B CN 117608677 B CN117608677 B CN 117608677B CN 202310581979 A CN202310581979 A CN 202310581979A CN 117608677 B CN117608677 B CN 117608677B
- Authority
- CN
- China
- Prior art keywords
- plug
- data set
- configuration data
- node
- plugin
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 89
- 238000004806 packaging method and process Methods 0.000 claims abstract description 9
- 230000006870 function Effects 0.000 claims description 61
- 238000013479 data entry Methods 0.000 claims description 40
- 238000004590 computer program Methods 0.000 claims description 20
- 238000012986 modification Methods 0.000 claims description 19
- 230000004048 modification Effects 0.000 claims description 19
- 230000004044 response Effects 0.000 claims description 17
- 238000012217 deletion Methods 0.000 claims description 4
- 230000037430 deletion Effects 0.000 claims description 4
- 230000008569 process Effects 0.000 description 12
- 238000012545 processing Methods 0.000 description 10
- 238000005516 engineering process Methods 0.000 description 8
- 238000010586 diagram Methods 0.000 description 6
- 238000004891 communication Methods 0.000 description 5
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 230000001960 triggered effect Effects 0.000 description 3
- 238000004883 computer application Methods 0.000 description 2
- 238000001914 filtration Methods 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 238000006467 substitution reaction Methods 0.000 description 2
- 238000013475 authorization Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000005484 gravity Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 230000007774 longterm Effects 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 238000011022 operating instruction Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/445—Program loading or initiating
- G06F9/44521—Dynamic linking or loading; Link editing at or after load time, e.g. Java class loading
- G06F9/44526—Plug-ins; Add-ons
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
Abstract
本说明书实施方式提供了一种插件的生成方法、云服务***及服务访问方法,通过将插件的功能参数封装为插件本体,并将插件本体与所需调用的配置数据集分别存储,使得第二节点在加载运行插件时,无需加载运行配置数据集,只需要在运行插件本体时读取配置数据集即可,如此,配置数据集中的数据量不再成为影响第二节点加载插件时的成功率的因素,使得获得的插件可以适用于配置数据集中的数据量较大的场景。
Description
技术领域
本说明书中实施方式关于计算机应用技术领域,具体地说,涉及计算机应用技术领域下的插件技术,更具体地说,涉及一种插件的生成方法、云服务***及服务访问方法。
背景技术
云服务***是一种基于云计算技术的服务器***,它将服务器的计算、存储、网络等基础资源通过虚拟化技术进行抽象和整合,形成一个高度自动化和可扩展的云计算平台,通过互联网向用户提供云计算服务。而网关作为云服务***中必要组成部分,在云服务***中起到了至关重要的作用。
目前,为避免影响网关的性能和稳定性,插件的数据量通常存在一些限制。同时,在插件进行更新时,需要对整个插件进行更新和部署,极易导致更新和部署过程中出错,从而降低插件的可扩展性。
发明内容
本说明书中多个实施方式提供一种插件的生成方法、云服务***及服务访问方法,实现了突破文本插件在数据量方面的限制,并提升文本插件的可扩展性的目的。
第一方面,本说明书的一个实施方式提供一种插件的生成方法,应用于云服务***中网关的第一节点,所述网关还包括多个第二节点,所述第二节点用于调用所述第一节点生成的插件,所述插件的生成方法包括:
将插件的功能参数封装为插件本体,所述功能参数用于描述所述插件的功能逻辑;所述插件本体被调用时,执行所述插件的功能逻辑;
将插件的配置数据集与所述插件本体分别存储,所述配置数据集包括执行所述功能参数描述的功能逻辑时,所需调用的数据。
第二方面,本说明书的一个实施方式提供了一种插件的生成装置,应用于云服务***中网关的第一节点,所述网关还包括多个第二节点,所述第二节点用于调用所述第一节点生成的插件,所述插件的生成装置包括:
封装模块,用于将插件的功能参数封装为插件本体,所述功能参数用于描述所述插件的功能逻辑;
存储模块,用于将插件的配置数据集与所述插件本体分别存储,所述配置数据集包括执行所述功能参数描述的功能逻辑时,所需调用的数据。
第三方面,本说明书的一个实施方式提供了一种云服务***,包括:网关,所述网关包括第一节点和多个第二节点;其中,
所述第一节点,用于将插件的功能参数封装为插件本体,所述功能参数用于描述所述插件的功能逻辑;和用于将插件的配置数据集与所述插件本体分别存储,所述配置数据集包括执行所述功能参数描述的功能逻辑时,所需调用的数据;所述插件本体被调用时,执行所述插件的功能逻辑;
所述第二节点,用于加载所述插件本体,和用于在运行所述插件本体时,调用与所述插件本体对应的配置数据集。
第四方面,本说明书的一个实施方式提供了一种服务访问方法,应用于云服务器***中网关的第二节点,所述网关还包括第一节点,所述第一节点用于将插件的功能参数封装为插件本体,并将插件的配置数据集与所述插件本体分别存储;所述功能参数用于描述所述插件的功能逻辑;所述插件本体被调用时,执行所述插件的功能逻辑;所述配置数据集包括执行所述功能参数描述的功能逻辑时,所需调用的数据;所述服务访问方法包括:
加载所述插件本体,在运行所述插件本体时,读取与所述插件本体对应的配置数据集;
利用运行的目标插件将用户请求路由到目标服务,并将所述目标服务响应所述用户请求的响应结果返回给所述用户请求的请求方;
所述用户请求携带插件标识和服务标识,所述插件标识用于指示所述目标插件,所述服务标识用于指示所述目标服务。
第五方面,本说明书的一个实施方式提供了一种电子设备,包括:处理器和存储器;
其中,所述存储器与所述处理器连接,所述存储器用于存储计算机程序;
所述处理器,用于通过运行所述存储器中存储的计算机程序,实现如上述的插件的生成方法或服务访问方法。
第六方面,本说明书的一个实施方式提供了一种存储介质,所述存储介质上存储有计算机程序,所述计算机程序被处理器运行时,实现如上述的插件的生成方法或服务访问方法。
第七方面,本说明书的一个实施方式提供了一种计算机程序产品或计算机程序,所述计算机程序产品或计算机程序包括计算机指令,所述计算机指令存储在计算机可读存储介质中;所述计算机设备的处理器从所述计算机可读存储介质读取所述计算机指令,所述处理器执行所述计算机指令时实现上述的插件的生成方法或服务访问方法的步骤。
本说明书提供的多个实施方式,通过将插件的配置数据集与插件本体分别存储,并使插件本体在运行时调用配置数据集的方式,将插件的功能参数封装为插件本体,并将插件本体与所需调用的配置数据集分别存储,使得第二节点在加载运行插件时,无需加载运行配置数据集,只需要在运行插件本体时读取配置数据集即可,如此,配置数据集中的数据量不再成为影响第二节点加载插件时的成功率的因素,使得获得的插件可以适用于配置数据集中的数据量较大的场景;另外,由于插件的插件本体与所需调用的配置数据集分别存储,在需要对配置数据集进行更新时,只需对存储的配置数据集进行单独更新即可,无需使第二节点重新加载插件本体,避免了传统的文本插件在需要更新插件中的某一条或多条数据时,即需要对整个插件进行更新和部署而可能导致的更新或部署出错的问题,改善了生成的插件的可扩展性。
附图说明
图1为云服务***的应用场景架构图;
图2为本说明书的一个实施方式提供的一种插件的生成方法的应用场景示意图;
图3为本说明书的一个实施方式提供的一种插件的生成方法的流程示意图;
图4为本说明书的一个实施方式提供的配置页面示意图;
图5为本说明书的另一个实施方式提供的配置页面示意图;
图6为本说明书的一个实施方式提供的一种插件的生成方法的实际应用流程图;
图7为本说明书的一个实施方式提供的一种服务访问方法的流程示意图;
图8为本说明书的另一个实施方式提供的一种插件的生成装置的结构示意图;
图9为本说明书的一个实施方式提供的一种电子设备的结构示意图。
具体实施方式
除非另外定义,本说明书实施例使用的技术术语或者科学术语应当为本说明书所属领域内具有一般技能的人士所理解的通常意义。本说明书实施例使用的“第一”、“第二”以及类似的词语并不表示任何顺序、数量或者重要性,而只是用来避免构成要素的混同而设置的。
除非上下文另有要求,否则,在整个说明书中,“多个”表示“至少两个”,“包括”被解释为开放、包含的意思,即为“包含,但不限于”。在说明书的描述中,术语“一个实施例”、“一些实施例”、“示例性实施例”、“示例”、“特定示例”或“一些示例”等旨在表明与该实施例或示例相关的特定特征、结构、材料或特性包括在本说明书的至少一个实施例或示例中。上述术语的示意性表示不一定是指同一实施例或示例。
下面将结合本说明书实施例中的附图,对本说明书实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本说明书一部分实施例,而不是全部的实施例。基于本说明书中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本说明书保护的范围。
概述
如背景技术部分所述,网关可以视为云服务***的一个中心化的入口点,用于管理和控制多个后端服务。关于云服务***的架构可以参考图1,多个客户端200通过向云服务***100发送服务请求,云服务***100通过响应服务请求得到响应结果并返回给服务请求的请求方(即发送服务请求的客户端200)。具体地,在云服务***100中包括负载均衡101、网关102和服务***103,服务***103可以包括多个提供不同服务的子***;其中,负载均衡101将多个客户端200的服务请求转发给网关102,网关102对服务请求进行处理后,路由至服务***103相应的子***,由该子***响应该服务请求获得响应结果,该响应结果由网关102返回给服务请求的请求方(即发送该服务请求的客户端101)。在上述过程中,为了丰富网关的功能或提高网关的灵活性,可以在网关中配置插件,使得网关可以根据需求进行定制化配置和扩展。插件可以对用户请求进行身份认证、过滤、限流等处理,丰富网关的功能,提高网关的灵活性,同时也可以减轻后端服务的负载和压力。
目前网关中的插件多以文本插件的形式存在,由于文本插件可以减少逻辑的复杂性和开发工作量,因此得到了广泛的使用。但目前,文本插件在网关102中的应用存在一定的限制:例如,目前网关102中的文本插件的存储大小限制为50kB(Kilobyte,千字节)以下,这是因为在文本插件的存储大小较大时,加载文本插件所需的网络带宽和运算资源就越多,加载失败的风险就越高,因此,为了降低网关102加载过大的文本插件出现错误的概率,提高网关102加载文本插件的成功率,需要对文本插件的大小进行限制。
另外,文本插件受限于文本管理的特性,在进行更新时需要对整个文本插件进行更新和部署,极易导致更新和部署过程中出错,从而降低了文本插件的可扩展性。这里以一具体的文本插件为例进行说明,该文本插件可以是IP控制插件,用于过滤用户请求,只允许白名单中的IP地址对服务***进行访问。该IP控制插件的部分数据如下所示:
type:ALLOW
items:
-blocks:
-61.3.XX.XX/24
-192.168.34.XX/32
-192.168.158.XX/32
其中,blocks字段用于存储白名单中的各IP地址(Internet Protocol Address,互联网协议地址)。一些场景中,例如在多租户应用场景中,白名单中存储中的IP地址段为购买了应用使用权限的租户地址,则这些租户可以基于这些IP地址段进行应用的访问和使用。当某一租户购买的软件使用权限到期后,需要及时将该租户对应的IP地址段从白名单中删除,例如IP地址段“61.3.XX.XX/24”对应的租户购买的使用权限到期,则需要将该IP地址段从白名单中删除。鉴于文本插件的特性,此时只能全量更新整个IP控制插件,然后由网关102重新加载更新后的IP控制插件。另外,由于文本插件的大小不能超过50kB的限制,若白名单中的IP地址数量过多,blocks字段自身的数据量大小就可能超过50kB,过大的文本插件可能会导致网关102在加载时出现错误。
为例解决这一问题,发明人对插件进行解耦,将插件的配置数据集(该配置数据集可以包括执行插件的功能逻辑时,所需调用的数据)从插件本体(该插件本体在被调用时,用于执行插件的功能逻辑)中拆分出来,并将配置数据集和插件本体分别存储。这样,可以单独更新配置数据集,避免插件的全量更新。同时,配置数据集不再受到插件的整体大小限制,使得插件可以适用于配置数据集中的数据量较大的场景,提升了插件的可扩展性。
基于上述的发明构思,本说明书实施方式提供了一种插件的生成方法,下面将结合附图,对所述插件的生成方法进行示例性描述。
场景示例
参考图2,图2示出了一种插件的生成方法的可行应用场景,在该应用场景下,管理员可以通过网关102的第一节点1021创建插件,将用于执行插件基本功能逻辑的插件本体存储于第一节点1021中,将在执行基本功能逻辑时,所需调用的数据以配置数据集的形式存储于存储***(该存储***例如可以是分布式缓存***104)中。网关中的第二节点1022可以有多个,第二节点1022可以用于处理客户端200发送的用户请求。第二节点1022在处理客户端200的用户请求之前,从第一节点1021中加载插件本体并运行,在运行插件时读取分布式缓存***104中的配置数据集。网关102中的负载均衡1023用于将多个客户端200的用户请求分发给多个第二节点1022中的一个,接收到用户请求的第二节点1022根据运行的插件处理用户请求,将用户请求路由至服务***103中相应的子***中,由该子***响应该用户请求,并将用户请求的响应结果返回给网关的第二节点1022,由第二节点1022将响应结果返回给客户端200。在该场景中,网关102可以是一个分布式***,第一节点1021可以支持插件的创建和存储,第二节点1022可以支持插件的加载运行以及用户请求的处理。根据网关102的类型的不同,该网关102可以是API(应用程序编程接口,Application ProgrammingInterface)网关,网关中创建和加载的插件本体包括但不限于文本插件。另外,在图2所示的应用场景中,客户端可以是具有网络访问能力的电子设备。具体的,例如,客户端可以是台式电脑、平板电脑、笔记本电脑、智能手机、数字助理、智能可穿戴设备、智能电视机、智能音箱等。在网关102中,各节点可以是服务器,服务器可以是具有一定运算处理能力的电子设备,其可以具有网络通信模块、处理器和存储器等。
***架构
本说明书实施方式提供一种云服务***。参考图1和图2,该云服务***可以包括负载均衡101、网关102和服务***103,网关102可以包括第一节点1021和多个第二节点1022,关于第一节点1021和第二节点1022的相关介绍可以参考上文中的相关描述。
示例的方法
本说明书的一个实施方式提供一种插件的生成方法,以应用于图2所示的云服务***中的网关102的第一节点1021为例进行说明,所述网关102还包括多个第二节点1022,所述第二节点1022用于调用所述第一节点1021生成的插件进行说明,如图3所示,该插件的生成方法包括:
S301:将插件的功能参数封装为插件本体,功能参数用于描述插件的功能逻辑,插件本体被调用时,执行插件的功能逻辑。
其中,插件可以是一种用于扩展网关102功能的应用程序,根据插件实现的功能逻辑的不同,可以将插件划分为IP访问控制插件、认证插件和限流插件等。插件的功能参数可以是描述插件基本功能逻辑的代码,以IP访问控制插件为例,该插件的功能参数可以用于描述该插件用于限定来自特定IP地址的用户请求是被允许的。当运行该插件时,可以通过加载并运行包括该功能参数的插件本体,实现对用户请求的IP访问控制。下面以一具体示例进行说明,假设某一插件的功能是使用base64解码方式对数据进行解码,然后返回JSON(JS对象简谱,JavaScript Object Notation)格式的解码结果。该插件的功能参数可以包括:local app=ngx.decode_base64(app_64)、local json_ok,json_err=cjson.decode(app)、return json_ok。其中,三个功能参数各自对应的功能逻辑分别为:使用base64解码、将解码结果转换为JSON格式、返回JSON格式的解码结果。
本实施例中,对于插件的功能不做限定,即插件的功能参数可以为描述任意功能逻辑的功能参数。例如,本步骤中的插件可以是IP访问控制插件,该IP访问控制插件的功能是,在运行时会对所有的用户请求进行过滤,从而允许来自处于白名单中的IP地址的用户请求继续访问服务***103。
本实施例中,将插件本体进行封装可以将插件本体组合成一个独立的、可重复使用的单元,便于网关102对插件本体的调用和管理。同时,封装生成的插件本体,又可以正常提供相应的功能,不会影响插件的使用。具体的,在将插件的功能参数封装为插件本体之后,通过插件本体的至少一个公开接口可以调用插件本体,以执行插件的功能逻辑。
S302:将插件的配置数据集与插件本体分别存储,配置数据集包括执行功能参数描述的功能逻辑时,所需调用的数据。
插件实现自身功能的过程中,在执行功能逻辑时通常需要调用一些必要的数据。对于某些类型的插件,这些必要的数据通常是用户创建插件时,基于插件的功能逻辑配置好的。本实施例中的插件即为这些类型的插件。因此,本实施例中的插件至少包括功能参数和配置参数两部分。以前文描述的IP访问控制插件为例,该插件在运行时会对所有的用户请求进行过滤,从而允许来自处于白名单中的IP地址的用户请求继续访问服务***,在该插件中,在执行上述功能逻辑时,需要调用白名单中的IP地址,并将白名单中的IP地址与用户请求的IP地址进行匹配,因此,白名单中的IP地址即是执行该插件的功能参数描述的功能逻辑时,所需调用的数据,即该白名单中的IP地址可以认为是该插件的配置数据集。
并且,本实施例中的插件不再将配置数据集存储于用于描述插件的功能逻辑的功能参数中,而是将两者解耦,单独分离出来,并分开存储。其中,功能参数被封装为上述插件本体,并存储在第一存储位置(该第一存储位置可以是如图2所示的第一节点1021中)。各配置参数将会组成配置数据集,并存储在第二存储位置(该第二存储位置可以是如图2所示的分布式缓存***104)。由于插件本体与配置数据集相互独立存储,因此,配置数据集的数据量不会对插件本体造成任何影响。在运行插件时,可以仅加载插件本体,在运行插件本体定义的功能逻辑时,通过读取数据的方式读取配置数据集即可,避免了由于配置数据集较大而可能导致的插件加载失败风险较高的问题。对于配置数据集中的数据量较大的场景,配置数据集的大小不再影响第二节点1022对于插件本体的加载成功率,只需保证插件本体的大小较小即可保障第二节点1022可以顺利加载所述插件本体。
本实施例中,在经过上述处理之后,第二节点1022可以先从第一存储位置加载插件本体以待使用。在第二节点1022运行加载的插件本体时,通过执行插件本体的功能逻辑,将会调用第二存储位置中的配置数据集实现自身的功能。例如,插件的功能是允许来自白名单中的各IP地址的用户请求继续访问服务***103。配置数据集可以包括白名单中的各IP地址。插件的插件本体和配置数据集分别存储在第一存储位置和第二存储位置。第二节点1022在处理用户请求之前,先从第一存储位置获取插件本体并加载至本地。一旦第二节点1022接收到用户请求,将会执行插件本体中的功能逻辑,并调用第二存储位置的配置数据集。进而基于配置数据集中的各IP地址判断当前访问的用户请求的IP地址是否位于白名单中。若是,则允许当前访问的用户请求继续访问服务***103,从而完成插件的功能。这里,本实施例中的插件本体包括但不限于纯文本插件。
上述插件的生成方法,通过将插件的配置数据集与插件本体分别存储,并使插件本体在运行时调用配置数据集的方式,将插件的功能参数封装为插件本体,并将插件本体与所需调用的配置数据集分别存储,使得第二节点1022在加载运行插件时,无需加载运行配置数据集,只需要在运行插件本体时读取配置数据集即可,如此,配置数据集中的数据量不再成为影响第二节点1022加载插件时的成功率的因素,使得获得的插件可以适用于配置数据集中的数据量较大的场景;另外,由于插件的插件本体与所需调用的配置数据集分别存储,在需要对配置数据集进行更新时,只需对存储的配置数据集进行单独更新即可,无需使第二节点1022重新加载插件本体,避免了传统的文本插件在需要更新插件中的某一条或多条数据时,即需要对整个插件进行更新和部署而可能导致的更新或部署出错的问题,改善了生成的插件的可扩展性。
为了提高配置数据集的可用性和读取速度,减少因存储配置数据集的设备发生故障造成的影响,在一些实施方式中,参考图2,网关102还包括分布式缓存***104,将插件的配置数据集与插件本体分别存储包括:
将插件的插件本体存储于第一节点;
根据插件的配置数据集,生成存储指令,存储指令用于指示分布式缓存***104存储插件的配置数据集。
本实施例中,第一节点将生成的存储指令发送至分布式缓存***104,分布式缓存***104在接收到该存储指令之后,将会存储插件的配置数据集。一个实施例中,该存储指令可以携带插件的配置数据集,从而分布式缓存***104通过解析存储指令可以得到插件的配置数据集,进而对得到的配置数据集进行存储。另一个实施例中,存储指令为第一节点和分布式缓存***104预先定义好的指令,分布式缓存***104在接收到存储指令之后,将会向第一节点发送数据请求。第一节点接收到该数据请求之后,将插件的配置数据集返回至分布式缓存***104,从而分布式缓存***104就可以得到插件的配置数据集,进而对得到的配置数据集进行存储。
本实施例增加了用于存储配置数据集的分布式缓存***104。在通过第一节点1021创建插件的过程中,插件本体存储在第一节点1021中,配置数据集将存储在分布式缓存***104。第二节点1022可以先将第一节点1021中的插件本体加载至本地。在接收到用户请求之后,再从分布式缓存***104中加载配置数据集以供使用。具体的,本实施例中的分布式缓存***104为采用分布式缓存技术搭建的***。分布式缓存***104包括多个节点,并且各节点均可以存储插件的配置数据集,即使其中部分节点发生故障,未发生故障的节点依旧可以为第一节点提供配置数据集。一个实施例中,可以在多个服务器组成的集群中部署分布式缓存,进而得到分布式缓存***104。其中,每一个服务器均与第二节点1022通信连接。这样,在第二节点1022从分布式缓存***104中调用配置数据集时,即使当前被访问的服务器发生故障,也可以从其它服务器中成功调用配置数据集。
本实施例利用分布式缓存技术搭建的分布式缓存***对配置数据集进行存储,从而可以集成分布式缓存技术的优点,不仅可以提高配置数据集的读取速度,还可以减少因存储配置数据集的设备发生故障造成的影响。
为了方便对配置数据集的管理,在一些实施方式中,将插件的配置数据集与插件本体分别存储之前还包括:
获取针对插件的功能逻辑配置的至少一个数据条目,数据条目包括数据值和数据过期时间。
根据数据条目生成插件的配置数据集,并为插件的配置数据集分配参数标识,参数标识为配置数据集在云服务***中的唯一标识。
本实施例中,插件的配置数据集包含插件的各项配置参数,其中,每项配置参数可以对应一个数据条目。一个实施例中,数据条目可以是配置参数在生成配置数据集阶段的称呼,因此配置参数即为数据条目。例如,针对允许白名单中各IP地址继续访问的IP控制插件,配置的每个数据条目分别为白名单中的一个IP地址。每个数据条目中的IP地址也可以视为IP控制插件的一项配置参数。
可以理解的是,数据条目的具体内容与插件的功能逻辑相关联。具体的,针对每一插件,配置的数据条目与插件的功能逻辑相适配,使得执行该功能逻辑时,可以使用相应的数据条目以实现插件的功能。数据值为数据条目的具体内容,也就是说,在执行插件的功能逻辑过程中调用某一数据条目对应的配置参数时,实质调用的是该数据条目的数据值。数据过期时间用于指示数据条目对应的配置参数的有效时间。针对任一数据条目,在数据过期时间之前,其对应的配置参数允许被使用,以配合插件的功能逻辑实现插件的功能。然而,在数据过期时间之后,该数据条目对应的配置参数无效,该数据条目对应的配置参数不允许被使用。具体的,用户可以根据需求,自由配置数据过期时间。其中,数据过期时间可以为任一具体时间,也可以为表示永不过期的特殊标识,其中,该特殊标识可以为数字、字母及特殊符号的组合,但不限于此。例如特殊标识可以为“长期”或“永不过期”字样。一个实施例中,数据条目还包括:数据条目的创建时间、修改次数、最后一次修改的修改时间中的至少一项。
配置数据集的参数标识作为云服务***中的唯一标识,用于区分不同的配置数据集。其中,该参数标识可以为任意数据形式,只需保证各配置数据集的参数标识在云服务***中不会发生重复即可。
一些实施例中,通过用户设备展示一配置页面,用户可以在配置页面针对所创建插件的功能逻辑输入至少一个数据条目。然后,用户设备将用户在配置页面输入的至少一个数据条目发送至第一节点,从而第一节点基于接收到的至少一条数据条目生成相应插件的配置数据集,并为配置数据集分配参数标识。一个实施例中配置页面可以如图4所示,其中配置有三个数据条目。第一数据条目401、第二数据条目402、第三数据条目403分别在数据值字段、过期时间字段、创建时间字段以及修改时间字段,记录有各自的数据值、数据过期时间、创建时间以及最后一次修改的修改时间。
本实施例以配置数据条目的形式,收集插件的配置参数。通过自由设置数据条目的数据过期时间,可以灵活控制配置参数的有效时间,从而便于对配置数据集的管理。
为减少由于配置参数的数据结构与插件的功能逻辑不匹配出现的问题,在一些实施方式中,获取针对插件的功能逻辑配置的至少一个数据条目包括:
确定目标数据类型,其中,目标数据类型用于指示执行插件的功能逻辑时,所需调用数据的目标数据结构。
根据目标数据类型,获取符合目标数据结构的至少一个数据条目。
针对每一插件,插件的功能逻辑与其配置数据集相适配,可以理解为插件的功能逻辑与配置数据集中各配置参数的数据结构相适配。应当说明的是,在完成插件的功能逻辑之后,用户即可确定与其相适配的数据结构。进而在创建配置参数或数据条目时,采用确定的数据结构进行创建。例如,对于允许白名单中各IP地址继续访问的IP控制插件。在完成IP控制插件的功能逻辑之后,可以确定配置参数的数据结构与IP地址的数据结构相同。然后按照IP地址的数据结构创建数据条目,最终使得IP控制插件执行功能逻辑时可以正常使用配置数据集中的各IP地址,以完成自身的功能。
由于在完成插件的功能逻辑之后,用户即可确定与其相适配的数据结构。因此,一些实施例中,该目标数据类型可以为用户自主选择的某一数据类型。根据目标数据类型,获取符合目标数据结构的至少一个数据条目包括:接收用户按照目标数据类型输入的至少一个数据条目。其中,按照目标数据类型输入的数据条目为符合目标数据结构的数据条目。一个实施例中,通过用户设备展示一类型选择页面,用户可以根据插件的功能逻辑在类型选择页面选择相应的数据类型,然后用户设备将跳转至配置页面。其中,配置页面可以显示用户所选数据类型对应的数据结构的相关提示信息,以提示用户输入符合数据结构的数据条目。还可以显示符合该数据结构的数据条目示例。用户设备最后将用户输入的所有符合数据结构的数据条目发送至第一节点。
为了进一步提高插件的可扩展性,在一些实施方式中,该插件的生成方法还包括:
响应于插件修改指令,对插件的配置数据集中的数据条目进行目标操作,其中,目标操作包括新增操作、修改操作和删除操作中的至少一项。
插件用于辅助云服务***更好的提供相关功能。因此,随着功能本身或者使用功能的客户发生变化,插件的配置数据集需要随之变化才能完成对插件的辅助。本实施例中,利用插件修改指令指示配置数据集进行调整。具体的调整方式包括但不限于:在配置数据集中新增配置参数,修改配置数据集中的原配置参数,删除配置数据集中的原配置参数。
一些实施例中,可以展示给用户一配置页面,在配置页面中提供多个控件,其中,不同的控件可以触发表示不同处理操作的插件修改指令。用户根据实际需求,选择相应的控件进行操作,以实现对配置数据集的调整。一个实施例中,配置页面如图5所示,每一数据条目对应着配置数据集中的一项配置参数。并且每一数据条目在目标区域501中对应一个编辑控件和一个删除控件。需要对哪一项配置参数进行调整,只需操作其对应的编辑控件或者删除控件即可。其中,编辑控件触发的插件修改指令,可以对配置数据集中相应的配置参数进行修改。删除控件触发的插件修改指令,可以将配置数据集中相应的配置参数删除。创建数据集条目控件502触发的插件修改指令,可以在配置数据集中新增相应的配置参数。
本实施例中,基于插件修改指令可以对配置数据集进行增删改等操作,从而实现插件的更新,进一步提升了插件的可扩展性。
在一些实施方式中,云服务***还包括:API,插件的生成方法还包括:
将插件本体与API绑定,以建立插件本体与API的对应关系。
本实施例中,网关为API网关。在插件的数量较多的情况下,若接收到用户请求,可以基于用户请求确定涉及到的API,进而利用插件本体与API的对应关系,查询到相应的插件本体,最后利用查到的插件本体对用户请求进行处理。通过插件本体与API的绑定,可以针对用户请求选择合适的插件完成相应的功能。
继续参见图2,在一些实施例中,图2中的网关为API网关,在API网关中应用插件的生成方法实现具体功能的步骤如图6所示,包括:
S601:用户在第一节点1021上创建API、配置数据集以及插件本体,为配置数据集分配参数标识,并在插件本体中引用该参数标识。将API与插件本体绑定,建立API与插件本体的绑定关系。
S602:第一节点1021将API、插件本体以及绑定关系存储至第一节点1021中,将配置数据集存储至分布式缓存***104中。
S603:第二节点1022从第一节点1021中获取API、插件本体以及绑定关系,将插件本体加载至本地。
S604:第二节点1022接收到客户端发送的用户请求。
S605:第二节点1022基于用户请求确定API,并基于绑定关系查询到加载至本地的插件本体。执行插件本体中的功能逻辑,并从分布式缓存***104中读取插件本体对应的配置数据集,实现对用户请求的处理。
S606:第二节点1022将用户请求发送至服务***103,并得到服务***103的响应结果。
S607:第二节点1022将响应结果转发至客户端。
应当说明的是,在插件的配置数据需要更新时,只需更新分布式缓存***104中的配置数据集即可。这样,第二节点1022下次执行插件的功能逻辑时,可以读取到更新后的配置数据集。本实施例将插件中的配置数据抽象到插件的配置数据集形成结构化数据后,当用户想维护插件中的配置数据时,可以像修改数据库中的数据一样,一条一条去维护,而插件的定义元数据完全不需要修改,可以大幅提高插件体系的可运维性。
以应用于云服务***中网关的第二节点为例,本说明书的一个实施方式还提供了一种服务访问方法,所述网关还包括第一节点,所述第一节点用于将插件的功能参数封装为插件本体,并将插件的配置数据集与所述插件本体分别存储;所述功能参数用于描述所述插件的功能逻辑;所述插件本体被调用时,执行所述插件的功能逻辑;所述配置数据集包括执行所述功能参数描述的功能逻辑时,所需调用的数据;如图7所示,所述服务访问方法包括:
S701:加载所述插件本体,在运行所述插件本体时,读取与所述插件本体对应的配置数据集;
S702:利用运行的目标插件将用户请求路由到目标服务,并将所述目标服务响应所述用户请求的响应结果返回给所述用户请求的请求方;
所述用户请求携带插件标识和服务标识,所述插件标识用于指示所述目标插件,所述服务标识用于指示所述目标服务。
在所述网关为API网关时,所述目标插件与API标识指示的API对应,所述插件标识可以包括API标识。
关于第二节点1022执行所述服务访问方法时,各步骤的具体限定,可参考上文中的相关描述,本说明书在此不做赘述。
示例的装置、电子设备、存储介质和软件
本说明书的一个实施方式还提供一种插件的生成装置,如图8所示,该插件的生成装置可以包括:
封装模块801,用于将插件的功能参数封装为插件本体,功能参数用于描述插件的功能逻辑;
存储模块802,用于将插件的配置数据集与插件本体分别存储,配置数据集包括执行功能参数描述的功能逻辑时,所需调用的数据。
本实施例提供的插件的生成装置,与本说明书上述实施例所提供的插件的生成方法属于同一申请构思,可执行本说明书上述任意实施例所提供的插件的生成方法,具备执行该插件的生成方法相应的功能模块和有益效果。未在本实施例中详尽描述的技术细节,可参见本说明书上述实施例提供的插件的生成方法的具体处理内容,此处不再加以赘述。
相应的,本说明书实施例还提供了一种云服务***,包括:网关,所述网关包括第一节点和多个第二节点;其中,
第一节点,用于将插件的功能参数封装为插件本体,功能参数用于描述插件的功能逻辑;和用于将插件的配置数据集与插件本体分别存储,配置数据集包括执行功能参数描述的功能逻辑时,所需调用的数据;所述插件本体被调用时,执行所述插件的功能逻辑;
第二节点,用于加载插件本体,和用于在运行插件本体时,调用与插件本体对应的配置数据集。
一些实施例中,云服务***还包括:分布式缓存***,第一节点将插件的配置数据集与插件本体分别存储具体用于:
将插件的插件文本存储于第一节点;
根据插件的配置数据集,生成存储指令,存储指令用于指示分布式缓存***存储插件的配置数据集。
一些实施例中,第一节点还用于响应于插件修改指令,对插件的配置数据集中的数据条目进行目标操作,其中,目标操作包括新增操作、修改操作和删除操作中的至少一项。
一些实施例中,云服务***还包括:API,第一节点,还用于将插件本体与API绑定,以建立插件本体与API的对应关系;
第二节点,还用于利用运行的目标插件将用户请求路由到目标服务,并将所述目标服务响应所述用户请求的响应结果返回给所述用户请求的请求方;所述用户请求携带有API标识和服务标识,所述目标插件与所述API标识指示的API对应,所述服务标识用于指示所述目标服务。
本说明书的另一实施例还提出一种电子设备,参见图9所示,本说明书的一个示例性实施例还提供了一种电子设备,包括:存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时执行本说明书上述实施例中描述的根据本说明书各种实施例的插件的生成方法或服务访问方法中的步骤。
该电子设备的内部结构可以如图9所示,该电子设备包括通过***总线连接的处理器、存储器、网络接口和输入装置。其中,该电子设备的处理器用于提供计算和控制能力。该中控设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作***和计算机程序。该内存储器为非易失性存储介质中的操作***和计算机程序的运行提供环境。该电子设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以本说明书上述实施例中描述的根据本说明书各种实施例的插件的生成方法或服务访问方法中的步骤。
处理器可包括主处理器,还可包括基带芯片、调制解调器等。
存储器中保存有执行本说明书技术方案的计算机程序,还可以保存有操作***和其他关键程序。具体地,计算机程序可以包括程序代码,程序代码包括计算机操作指令。更具体的,存储器可以包括只读存储器(read-only memory,ROM)、可存储静态信息和指令的其他类型的静态存储设备、随机存取存储器(random access memory,RAM)、可存储信息和指令的其他类型的动态存储设备、磁盘存储器、flash等等。
处理器可以是通用处理器,例如通用处理器(CPU)、微处理器等,也可以是特定应用集成电路(application-specific integrated circuit,ASIC),或一个或多个用于控制本说明书方案程序执行的集成电路。还可以是数字信号处理器(DSP)、专用集成电路(ASIC)、现成可编程门阵列(FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
输入设备可包括接收用户输入的数据和信息的装置,例如键盘、鼠标、摄像头、扫描仪、光笔、语音输入装置、触摸屏、计步器或重力感应器等。
输出设备可包括允许输出信息给用户的装置,例如显示屏、打印机、扬声器等。
通信接口可包括使用任何收发器一类的装置,以便与其他设备或通信网络通信,如以太网,无线接入网(RAN),无线局域网(WLAN)等。
处理器执行存储器中所存放的计算机程序,以及调用其他设备,可用于实现本说明书上述实施例所提供的任意一种插件的生成方法的各个步骤。
该电子设备还可以包括显示组件和语音组件,该显示组件可以是液晶显示屏或者电子墨水显示屏,该电子设备的输入装置可以是显示组件上覆盖的触摸层,也可以是电子设备外壳上设置的按键、轨迹球或触控板,还可以是外接的键盘、触控板或鼠标等。
本领域技术人员可以理解,图9中示出的结构,仅仅是与本说明书方案相关的部分结构的框图,并不构成对本说明书方案所应用于其上的电子设备的限定,具体的电子设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
除了上述方法和设备以外,本说明书实施例提供的插件的生成方法还可以是计算机程序产品,其包括计算机程序,所述计算机程序在被处理器运行时使得所述处理器执行本说明书上述“示例性方法”部分中描述的根据本说明书各种实施例的插件的生成方法或服务访问方法中的步骤。
所述计算机程序产品可以以一种或多种程序设计语言的任意组合来编写用于执行本说明书实施例操作的程序代码,所述程序设计语言包括面向对象的程序设计语言,诸如Java、C++等,还包括常规的过程式程序设计语言,诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户电子设备上执行、部分地在用户设备上执行、作为一个独立的软件包执行、部分在用户电子设备上部分在远程电子设备上执行、或者完全在远程电子设备或服务器上执行。
此外,本说明书实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行本说明书上述“示例的方法”部分中描述的根据本说明书各种实施例的插件的生成方法或服务访问方法中的步骤。
需要说明的是,本说明书所涉及的用户信息(包括但不限于用户设备信息、用户个人信息等)和数据(包括但不限于用于分析的数据、存储的数据、展示的数据等),均为经用户授权或者经过各方充分授权的信息和数据,并且相关数据的收集、使用和处理需要遵守相关国家和地区的相关法律法规和标准,并提供有相应的操作入口,供用户选择授权或者拒绝。
可以理解,本文中的具体的例子只是为了帮助本领域技术人员更好地理解本说明书实施方式,而非限制本说明书的范围。
可以理解,在本说明书中的各种实施方式中,各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本说明书实施方式的实施过程构成任何限定。
可以理解,本说明书中描述的各种实施方式,既可以单独实施,也可以组合实施,本说明书实施方式对此并不限定。
除非另有说明,本说明书实施方式所使用的所有技术和科学术语与本说明书的技术领域的技术人员通常理解的含义相同。本说明书中所使用的术语只是为了描述具体的实施方式的目的,不是旨在限制本说明书的范围。本说明书所使用的术语“和/或”包括一个或多个相关的所列项的任意的和所有的组合。在本说明书实施方式和所附权利要求书中所使用的单数形式的“一种”、“上述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。
可以理解,本说明书实施方式的处理器可以是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法实施方式的各步骤可以通过处理器中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器可以是通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific IntegratedCircuit,ASIC)、现成可编程门阵列(Field Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本说明书实施方式中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本说明书实施方式所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器,处理器读取存储器中的信息,结合其硬件完成上述方法的步骤。
可以理解,本说明书实施方式中的存储器可以是易失性存储器或非易失性存储器,或可包括易失性和非易失性存储器两者。其中,非易失性存储器可以是只读存储器(ROM)、可编程只读存储器(Programmable ROM,PROM)、可擦除可编程只读存储器(ErasablePROM,EPROM)、电可擦除可编程只读存储器(EEPROM)或闪存。易失性存储器可以是随机存取存储器(RAM)。应注意,本文描述的***和方法的存储器旨在包括但不限于这些和任意其它适合类型的存储器。
本领域普通技术人员可以意识到,结合本文中所公开的实施方式描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本说明书的范围。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的***、装置和单元的具体工作过程,可以参考前述方法实施方式中的对应过程,在此不再赘述。
在本说明书所提供的几个实施方式中,应所述理解到,所揭露的***、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施方式仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个***,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施方式方案的目的。
另外,在本说明书各个实施方式中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本说明书的技术方案本质上或者说对现有技术做出贡献的部分或者所述技术方案的部分可以以软件产品的形式体现出来,所述计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本说明书各个实施方式所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM)、随机存取存储器(RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本说明书的具体实施方式,但本说明书的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本说明书揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本说明书的保护范围之内。因此,本说明书的保护范围应所述以权利要求的保护范围为准。
Claims (11)
1.一种插件的生成方法,其特征在于,应用于云服务***中网关的第一节点,所述网关还包括多个第二节点,所述第二节点用于调用所述第一节点生成的插件,所述插件的生成方法包括:
将插件的功能参数封装为插件本体,所述功能参数用于描述所述插件的功能逻辑;所述插件本体被调用时,执行所述插件的功能逻辑;
将插件的配置数据集与所述插件本体分别存储,所述配置数据集包括执行所述功能参数描述的功能逻辑时,所需调用的数据;
其中,所述网关还包括分布式缓存***,所述将插件的配置数据集与所述插件本体分别存储包括:
将所述插件的插件本体存储于所述第一节点;
根据所述插件的配置数据集,生成存储指令,所述存储指令用于指示所述分布式缓存***存储所述插件的配置数据集。
2.根据权利要求1所述的方法,其特征在于,所述将插件的配置数据集与所述插件本体分别存储之前还包括:
获取针对所述插件的功能逻辑配置的至少一个数据条目,所述数据条目包括数据值和数据过期时间;
根据所述数据条目生成所述插件的配置数据集,并为所述插件的配置数据集分配参数标识,所述参数标识为所述配置数据集在所述云服务***中的唯一标识。
3.根据权利要求2所述的方法,其特征在于,所述获取针对所述插件的功能逻辑配置的至少一个数据条目包括:
确定目标数据类型,其中,所述目标数据类型用于指示执行所述插件的功能逻辑时,所需调用数据的目标数据结构;
根据所述目标数据类型,获取符合所述目标数据结构的至少一个数据条目。
4.根据权利要求1所述的方法,其特征在于,还包括:
响应于插件修改指令,对所述插件的配置数据集中的数据条目进行目标操作,其中,所述目标操作包括新增操作、修改操作和删除操作中的至少一项。
5.根据权利要求1~4任一项所述的方法,其特征在于,所述云服务***还包括:应用程序编程接口API,所述插件的生成方法还包括:
将所述插件本体与所述API绑定,以建立所述插件本体与所述API的对应关系。
6.一种云服务***,其特征在于,包括:网关,所述网关包括第一节点和多个第二节点;其中,
所述第一节点,用于将插件的功能参数封装为插件本体,所述功能参数用于描述所述插件的功能逻辑;和用于将插件的配置数据集与所述插件本体分别存储,所述配置数据集包括执行所述功能参数描述的功能逻辑时,所需调用的数据;所述插件本体被调用时,执行所述插件的功能逻辑;
所述第二节点,用于加载所述插件本体,和用于在运行所述插件本体时,调用与所述插件本体对应的配置数据集;
所述网关还包括分布式缓存***,所述第一节点将插件的配置数据集与所述插件本体分别存储具体用于:
将所述插件的插件文本存储于所述第一节点;
根据所述插件的配置数据集,生成存储指令,所述存储指令用于指示所述分布式缓存***存储所述插件的配置数据集。
7.根据权利要求6所述的***,其特征在于,所述第一节点还用于响应于插件修改指令,对所述插件的配置数据集中的数据条目进行目标操作,其中,所述目标操作包括新增操作、修改操作和删除操作中的至少一项。
8.根据权利要求6~7任一项所述的***,其特征在于,还包括:应用程序编程接口API,所述第一节点,还用于将所述插件本体与所述API绑定,以建立所述插件本体与所述API的对应关系;
所述第二节点,还用于利用运行的目标插件将用户请求路由到目标服务,并将所述目标服务响应所述用户请求的响应结果返回给所述用户请求的请求方;所述用户请求携带有API标识和服务标识,所述目标插件与所述API标识指示的API对应,所述服务标识用于指示所述目标服务。
9.一种服务访问方法,其特征在于,应用于云服务器***中网关的第二节点,所述网关还包括第一节点,所述第一节点用于将插件的功能参数封装为插件本体,并将插件的配置数据集与所述插件本体分别存储;其中,所述网关还包括分布式缓存***,所述将插件的配置数据集与所述插件本体分别存储包括:将所述插件的插件本体存储于所述第一节点;根据所述插件的配置数据集,生成存储指令,所述存储指令用于指示所述分布式缓存***存储所述插件的配置数据集;所述功能参数用于描述所述插件的功能逻辑;所述插件本体被调用时,执行所述插件的功能逻辑;所述配置数据集包括执行所述功能参数描述的功能逻辑时,所需调用的数据;所述服务访问方法包括:
加载所述插件本体,在运行所述插件本体时,读取与所述插件本体对应的配置数据集;
利用运行的目标插件将用户请求路由到目标服务,并将所述目标服务响应所述用户请求的响应结果返回给所述用户请求的请求方;
所述用户请求携带插件标识和服务标识,所述插件标识用于指示所述目标插件,所述服务标识用于指示所述目标服务。
10.一种电子设备,其特征在于,包括:处理器和存储器;
其中,所述存储器与所述处理器连接,所述存储器用于存储计算机程序;
所述处理器,用于通过运行所述存储器中存储的计算机程序,实现如权利要求1~5任一项所述的插件的生成方法或如权利要求9所述的服务访问方法。
11.一种存储介质,其特征在于,所述存储介质上存储有计算机程序,所述计算机程序被处理器运行时,实现如权利要求1~5任一项所述的插件的生成方法或如权利要求9所述的服务访问方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310581979.5A CN117608677B (zh) | 2023-05-22 | 2023-05-22 | 插件的生成方法、云服务***及服务访问方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310581979.5A CN117608677B (zh) | 2023-05-22 | 2023-05-22 | 插件的生成方法、云服务***及服务访问方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN117608677A CN117608677A (zh) | 2024-02-27 |
CN117608677B true CN117608677B (zh) | 2024-07-05 |
Family
ID=89950301
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310581979.5A Active CN117608677B (zh) | 2023-05-22 | 2023-05-22 | 插件的生成方法、云服务***及服务访问方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117608677B (zh) |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115086172A (zh) * | 2022-07-25 | 2022-09-20 | 广东壹公里数智科技有限公司 | 一种数据网关插件更新方法、装置、电子设备及存储介质 |
CN115586935A (zh) * | 2022-10-21 | 2023-01-10 | 深圳市晨北科技有限公司 | 一种数据处理方法、装置、电子设备及介质 |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9880814B1 (en) * | 2015-08-13 | 2018-01-30 | F5 Networks, Inc. | Dynamic generation of plugins based on user-customized catalogs |
CN108512747A (zh) * | 2017-02-23 | 2018-09-07 | 中兴通讯股份有限公司 | 家庭网关的插件管理方法以及家庭网关、通信*** |
CN110162345B (zh) * | 2019-05-05 | 2022-02-18 | 网宿科技股份有限公司 | 一种应用程序访问方法、装置和存储介质 |
JP7164039B2 (ja) * | 2019-06-21 | 2022-11-01 | 日本電信電話株式会社 | プラグイン生成装置、コントローラシステム、プラグイン生成方法、および、プラグイン生成プログラム |
US11321101B2 (en) * | 2019-07-10 | 2022-05-03 | Vmware, Inc. | Deployment and isolation of plugins in a virtualized computing environment |
CN115134235A (zh) * | 2022-06-22 | 2022-09-30 | 武汉东湖学院 | 微服务网关插件动态加载方法、装置、***及其存储介质 |
CN115061751A (zh) * | 2022-06-28 | 2022-09-16 | 中国平安人寿保险股份有限公司 | 插件加载方法、插件加载装置、电子设备及存储介质 |
-
2023
- 2023-05-22 CN CN202310581979.5A patent/CN117608677B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115086172A (zh) * | 2022-07-25 | 2022-09-20 | 广东壹公里数智科技有限公司 | 一种数据网关插件更新方法、装置、电子设备及存储介质 |
CN115586935A (zh) * | 2022-10-21 | 2023-01-10 | 深圳市晨北科技有限公司 | 一种数据处理方法、装置、电子设备及介质 |
Also Published As
Publication number | Publication date |
---|---|
CN117608677A (zh) | 2024-02-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9317681B2 (en) | Information processing apparatus, information processing method, and computer program product | |
US10908971B1 (en) | Method and system for generating a customizable connector | |
CN111736775A (zh) | 多源存储方法、装置、计算机***及存储介质 | |
CN108287894B (zh) | 数据处理方法、装置、计算设备及存储介质 | |
US20210097476A1 (en) | Container Management Method, Apparatus, and Device | |
US8856365B2 (en) | Computer-implemented method, computer system and computer readable medium | |
CN112799825A (zh) | 一种任务处理方法和网络设备 | |
CN111818175B (zh) | 企业服务总线配置文件生成方法、装置、设备和存储介质 | |
US11882154B2 (en) | Template representation of security resources | |
CN113395340A (zh) | 一种信息更新方法、装置、设备、***和可读存储介质 | |
US11257040B2 (en) | Providing a binary data file to a client application using a document model | |
US11743320B2 (en) | File storage and retrieval | |
CN117608677B (zh) | 插件的生成方法、云服务***及服务访问方法 | |
CN116566656A (zh) | 资源访问方法、装置、设备及计算机存储介质 | |
CN116233254A (zh) | 业务切流方法、装置、计算机设备和存储介质 | |
CN109088913B (zh) | 请求数据的方法和负载均衡服务器 | |
WO2022071946A1 (en) | Data transformations based on policies | |
CN117828672B (zh) | 细粒度动态授权的访问控制与高并发处理方法及装置 | |
US11520781B2 (en) | Efficient bulk loading multiple rows or partitions for a single target table | |
US20240256495A1 (en) | Method, apparatus, electronic device and storage medium for data processing | |
US20240205297A1 (en) | Method and apparatus for establishing network connection, electronic device, and storage medium | |
US11853560B2 (en) | Conditional role decision based on source environments | |
CN117255136B (zh) | 一种路由方法、微服务***、设备及存储介质 | |
CN111404979B (zh) | 业务请求处理的方法、装置及计算机可读存储介质 | |
US11663058B1 (en) | Preemptive filtering of events of an event bus with a deterministic filter |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |