CN117176702A - 一种应用服务注册方法、装置及设备 - Google Patents
一种应用服务注册方法、装置及设备 Download PDFInfo
- Publication number
- CN117176702A CN117176702A CN202210581685.8A CN202210581685A CN117176702A CN 117176702 A CN117176702 A CN 117176702A CN 202210581685 A CN202210581685 A CN 202210581685A CN 117176702 A CN117176702 A CN 117176702A
- Authority
- CN
- China
- Prior art keywords
- service
- registration
- configuration information
- service configuration
- code package
- 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 63
- 230000006870 function Effects 0.000 claims description 90
- 238000004891 communication Methods 0.000 claims description 22
- 238000012545 processing Methods 0.000 claims description 6
- 238000001914 filtration Methods 0.000 claims description 5
- 230000008569 process Effects 0.000 description 20
- 238000011161 development Methods 0.000 description 9
- 238000010586 diagram Methods 0.000 description 7
- 238000012360 testing method Methods 0.000 description 7
- 238000004519 manufacturing process Methods 0.000 description 5
- 230000007246 mechanism Effects 0.000 description 4
- 238000011144 upstream manufacturing Methods 0.000 description 4
- 238000012423 maintenance Methods 0.000 description 3
- 238000004458 analytical method Methods 0.000 description 2
- 230000008901 benefit Effects 0.000 description 2
- 238000004590 computer program Methods 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- 241000208340 Araliaceae Species 0.000 description 1
- 235000005035 Panax pseudoginseng ssp. pseudoginseng Nutrition 0.000 description 1
- 235000003140 Panax quinquefolius Nutrition 0.000 description 1
- 230000003044 adaptive effect Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 238000004883 computer application Methods 0.000 description 1
- 238000012790 confirmation Methods 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000005206 flow analysis Methods 0.000 description 1
- 235000008434 ginseng Nutrition 0.000 description 1
- 238000002347 injection Methods 0.000 description 1
- 239000007924 injection Substances 0.000 description 1
- 238000011835 investigation Methods 0.000 description 1
- 238000011022 operating instruction Methods 0.000 description 1
- 230000000717 retained effect Effects 0.000 description 1
- 239000000243 solution Substances 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明公开了一种应用服务注册方法、装置及设备,所述方法包括:获取应用服务所引用的至少一个功能代码包;根据所述至少一个功能代码包的服务配置信息,生成与所述功能代码包对应的注册服务的服务配置信息;将所述注册服务的服务配置信息,发送至网关服务端进行自动注册。通过上述方式,本发明实现了应用服务自动注册,提高应用服务的注册效率。
Description
技术领域
本发明涉及通信技术领域,具体涉及一种应用服务注册方法、装置及设备。
背景技术
网关服务在企业信息化系统架构里是一个重要的交通枢纽,各个系统直接通信交互主要依靠网关服务的调用,各个系统通过将API(应用程序接口)服务注册到网关上,为其他系统提供能力支持。在服务注册过程中,开发人员需要登入服务网关填写服务的基本信息,例如入参、出参、示例报文等,对API服务进行注册和发布,该过程由开发人员手动操作。
现有技术方案主要过于依赖人工,在注册量大的情况下非常耗费时间,且影响准确率,对后续上线服务间调用成功率以及问题排查存在较大的隐患。
现有的人工注册模式存在以下问题:注册效率低下、注册信息容易填错,影响开发效率。
发明内容
鉴于上述问题,提出了本发明实施例以便提供一种克服上述问题或者至少部分地解决上述问题的一种应用服务注册方法、装置及设备,能够在编码阶段实现应用服务自动注册,保证服务信息准确性的同时提高开发效率。
根据本发明实施例的一个方面,提供了一种应用服务注册方法,所述方法包括:
获取应用服务所引用的至少一个功能代码包;
根据所述至少一个功能代码包的服务配置信息,生成与所述功能代码包对应的注册服务的服务配置信息;
将所述注册服务的服务配置信息,发送至网关服务端进行自动注册。
可选的,获取应用服务所引用的至少一个功能代码包,包括:
扫描自动注册工具库,获得所述应用服务的编码阶段所引用的至少一个功能代码包,所述自动注册工具库中包括所述应用服务的编码阶段所引用的至少一个功能代码包。
可选的,根据所述至少一个功能代码包的服务配置信息,生成与所述功能代码包对应的注册服务的服务配置信息,包括:
获得所述至少一个功能代码包的应用程序接口API类的服务配置信息;
根据所述至少一个功能代码包的API类的服务配置信息,生成与所述功能代码包对应的注册服务的服务配置信息。
可选的,所述API类的服务配置信息包括:服务变量值类参数和/或函数调用类参数。
可选的,根据所述至少一个功能代码包的API类的服务配置信息,生成与所述功能代码包对应的注册服务的服务配置信息,包括:
遍历至少一个功能代码包的API类的服务配置信息,若所述功能代码包的API类的服务配置信息为服务变量值类参数,通过赋值语句将所述服务变量值类参数抽象成一个对象符号,构建一条信息流数据;
若所述功能代码包的API类的服务配置信息为函数调用类参数,根据预设规则将所述函数调用类参数抽象成一个对象符号,构建一条信息流数据;
遍历构建的多个信息流数据,判断信息流数据是否是API服务注册信息,如果是,则生成所述功能代码包对应的注册服务的服务配置信息,否则过滤该条信息流数据。
可选的,所述应用服务注册方法还包括:
将所述注册服务的服务配置信息与网关服务端保存的服务配置信息进行对比,若二者一致,确认所述注册服务不需要注册,否则确认所述注册服务需要注册;
将需要注册的所述注册服务的服务配置信息覆盖所述网关服务端保存的服务配置信息。
可选的,将所述注册服务的服务配置信息,发送至网关服务端进行自动注册,包括:
将所述注册服务的服务配置信息转化成与网关服务端相对应的客户端代码;
将所述客户端代码推送至网关服务端进行自动注册。
根据本发明实施例的另一方面,提供了一种应用服务注册装置,所述装置包括:
获取模块,用于获取应用服务所引用的至少一个功能代码包;
处理模块,用于根据所述至少一个功能代码包的服务配置信息,生成与所述功能代码包对应的注册服务的服务配置信息;
发送模块,用于将所述注册服务的服务配置信息,发送至网关服务端进行自动注册。
根据本发明实施例的又一方面,提供了一种计算设备,包括:处理器、存储器、通信接口和通信总线,所述处理器、所述存储器和所述通信接口通过所述通信总线完成相互间的通信;
所述存储器用于存放至少一可执行指令,所述可执行指令使所述处理器执行上述所述的应用服务注册方法对应的操作。
根据本发明实施例的再一方面,提供了一种计算机存储介质,所述存储介质中存储有至少一可执行指令,所述可执行指令使处理器执行如上述所述的应用服务注册方法对应的操作。
根据本发明上述实施例提供的方案,通过获取应用服务所引用的至少一个功能代码包;根据所述至少一个功能代码包的服务配置信息,生成与所述功能代码包对应的注册服务的服务配置信息;将所述注册服务的服务配置信息,发送至网关服务端进行自动注册。能够实现应用服务自动注册,保证服务信息准确性的同时提高开发效率,极大减少了业务开发人员以及运维管理人员的工作量,同时减少了网络服务注册过程中不可避免的错误。
上述说明仅是本发明实施例技术方案的概述,为了能够更清楚了解本发明实施例的技术手段,而可依照说明书的内容予以实施,并且为了让本发明实施例的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明实施例的具体实施方式。
附图说明
通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明实施例的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
图1示出了本发明实施例提供的应用服务注册方法流程图;
图2示出了本发明另一实施例提供的代码自动扫描模块的实现流程示意图;
图3示出了本发明另一实施例提供的版本对比流程示意图;
图4示出了本发明另一实施例提供的应用服务注册方法的一具体的流程图;
图5示出了本发明另一实施例提供的自动注册模块的架构示意图;
图6示出了本发明实施例提供的应用服务注册装置的结构示意图;
图7示出了本发明另一实施例提供的应用服务注册装置的功能架构示意图;
图8示出了本发明实施例提供的计算设备的结构示意图。
具体实施方式
下面将参照附图更详细地描述本发明的示例性实施例。虽然附图中显示了本发明的示例性实施例,然而应当理解,可以以各种形式实现本发明而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本发明,并且能够将本发明的范围完整的传达给本领域的技术人员。
图1示出了本发明实施例提供的一种应用服务注册方法,包括:
步骤11,获取应用服务所引用的至少一个功能代码包;
步骤12,根据所述至少一个功能代码包的服务配置信息,生成与所述功能代码包对应的注册服务的服务配置信息;
步骤13,将所述注册服务的服务配置信息,发送至网关服务端进行自动注册。
其中,所述功能代码包可以为jar(Java Archive File,Java归档文件)包;
需要说明的是,根据实际情况,应用服务可以单独引用独立的一个功能代码包,也可以可叠加引用存在关联关系的至少两个功能代码包,以满足实际的业务需求。
本发明的该实施例中,通过所述至少一个功能代码包的服务配置信息,生成与所述功能代码包对应的注册服务的服务配置信息,将所述注册服务的服务配置信息,发送至网关服务端进行自动注册。能够实现应用服务自动注册,保证服务信息准确性的同时提高开发效率,极大减少了业务开发人员以及运维管理人员的工作量,同时减少了网络服务注册过程中不可避免的错误。
本发明一可选的实施中,步骤11,可以包括:
步骤111,扫描自动注册工具库,获得所述应用服务的编码阶段所引用的至少一个功能代码包,所述自动注册工具库中包括所述应用服务的编码阶段所引用的至少一个功能代码包。
本实施例中,开发人员在编码阶段在自动注册工具库中引用不同的功能代码包,然后在代码里面加载API相关的注解,基于所述API相关的注解,可以扫描自动注册工具库,获得所述应用服务的编码阶段所引用的至少一个功能代码包。
本发明又一可选的实施中,步骤12,可以包括:
步骤121,获得所述至少一个功能代码包的应用程序接口API类的服务配置信息;
步骤122,根据所述至少一个功能代码包的API类的服务配置信息,生成与所述功能代码包对应的注册服务的服务配置信息。
其中,所述API类的服务配置信息包括:服务变量值类参数和/或函数调用类参数。
这里,服务变量值类参数可以包括但不限于:调用入参、出参等信息;
函数调用参数可以包括但不限于:调用功能代码包所用到的目标函数等信息,如函数调用入参、出参等信息;这些函数的功能是反映不同功能代码包之间的依赖关系;
本实施例中,根据每一个功能代码包的API类配置信息,生成与所述功能代码包对应的注册服务的服务配置信息,其中一个功能代码包对应一个注册服务,这样建立了功能代码包与注册服务之间的对应关系,可以大幅提升注册成功率。
图2示出了本发明的上述实施例中步骤11和步骤12的具体实现,例如该步骤11和12可以由代码自动扫描模块实现,具体实现过程可以包括:
开发人员为应用服务编写源代码,可以根据实际需求,通过自动注册工具库引用功能代码包1、功能代码包2和/或功能代码包n;
将所述源代码与功能代码包的代码结合后,存入自动注册工具库,然后在代码里面加载API相关的注解;
代码自动扫描模块扫描自动注册工具库后,生成功能代码包1对应的注册服务的服务配置信息1、功能代码包1对应的注册服务的服务配置信息2、功能代码包n对应的注册服务的服务配置信息n;
所述代码自动扫描模块引用过程可以实现自动扫描和收集程序中的服务变量值传递、特殊函数调用入参、出参等信息,自动判断是否出现需要注册的信息,从而避免出现开发上线后遗漏服务注册情况。
本发明又一可选的实施中,步骤122,可以包括:
步骤1221,遍历至少一个功能代码包的API类的服务配置信息,若所述功能代码包的API类的服务配置信息为服务变量值类参数,通过赋值语句将所述服务变量值类参数抽象成一个对象符号,构建一条信息流数据;
步骤1222,若所述功能代码包的API类的服务配置信息为函数调用类参数,根据预设规则将所述函数调用类参数抽象成一个对象符号,构建一条信息流数据;
步骤1223,遍历构建的多个信息流数据,判断信息流数据是否是API服务注册信息,如果是,则生成所述功能代码包对应的注册服务的服务配置信息,否则过滤该条信息流数据。
这里,可以将所述多个信息流数据(Infoflow)存放至所述自动注册工具库,便于后续的服务信息分析;
本实施例中,对所述多个信息流数据进行筛选,仅保留是API服务注册信息的信息流数据,来生成所述功能代码包对应的注册服务的服务配置信息,用于网络服务的自动注册,这样可以有效提升注册效率。
图3示出了代码自动扫描模块采用代码信息流分析流程,实现上述注册服务的服务配置信息的生成过程,具体可以包括:
步骤31:启动对自动注册工具库功能代码包的代码扫描引擎函数,开始遍历扫描;
步骤32:按照预设规则对所述功能代码包内容进行扫描判断API服务配置信息的类型,包括服务配置变量是否出现,或者是否存在嵌套函数调用需使用的服务注册出入参等信息;
步骤33:判断所述API服务配置信息的类型;
步骤34:如果所述API服务配置信息的类型为服务变量类参数,则通过赋值语句抽象成一个对象符号(Symbol),并相对应的构建一条信息流数据Infoflow;
步骤35:如果所述API服务配置信息的类型为函数调用类参数,则按照实现开发定的规则抽象成一个对象Symbol,同时构建一条信息流数据Infoflow;
步骤36:将构建的多条信息流数据Infoflow存放至自动注册工具库(lib库)并用于后续服务配置信息分析;
步骤37:判断是否是API服务注册信息;
步骤38:如果是则生成待注册服务配置信息;
步骤39:否则过滤剔除该条数据流。
本实施例中,过滤掉不是API服务注册信息的数据流,可以有效提升注册效率和注册成功率。
本发明又一可选的实施中,在步骤13之前,应用服务注册方法还可以包括:
步骤123,将所述注册服务的服务配置信息与网关服务端保存的服务配置信息进行对比,若二者一致,确认所述注册服务不需要注册,否则确认所述注册服务需要注册;
步骤124,将需要注册的所述注册服务的服务配置信息覆盖所述网关服务端保存的服务配置信息。
本实施例中,为了避免重复注册和版本冲突,在执行注册过程之前,将通过扫描获取的服务配置信息与网关服务端保存的服务配置信息进行对比,若两种配置信息不一致,则将需要注册的所述注册服务的服务配置信息覆盖所述网关服务端保存的服务配置信息。
需要说明的是,本实施例所述的操作步骤,是优选的操作步骤,可以大幅提升注册的效率,但不是必要的操作步骤,可以根据实际的需要进行适应性操作。
图4示出了注册服务的服务配置信息与网关服务端保存的服务配置信息进行对比过程,具体可以包括:
步骤41:扫描获取注册服务的服务配置信息,所述注册服务的服务配置信息用于与网关服务端保存的服务配置信息进行对比;
步骤42:判断注册服务的服务配置信息在服务网关集群上是否被注册过;
步骤43:若没有被注册则自动将带注册信息发送至自动注册模块发起自动注册,并将注册结果反馈客户端;
步骤44:若所述注册服务的服务配置信息已被注册过,则与原注册服务的服务配置信息(上一版本的注册服务的服务配置信息)进行对比;
步骤44:判断该注册服务的服务配置信息是否有变化;
步骤46:若注册服务的服务配置信息无变化,则不注册;
步骤47:若注册服务的服务配置信息与服务端的服务配置信息不一致,则将所述注册服务的服务配置信息返回给开发人员进行确认;
步骤48:开发人员根据实际上线需求情况进行确认,如需注册则版本号+1并覆盖原注册服务的服务配置信息,若开发人员确定不注册则无需注册。
本实施例中,通过将扫描获取的服务配置信息与网关服务端保存的服务配置信息进行对比,仅对两种配置信息不一致的进行注册以及覆盖操作,这样可以避免重复注册和版本冲突,同时可以大幅提升注册的效率。
本发明又一可选的实施例中,步骤13,可以包括:
步骤131,将所述注册服务的服务配置信息转化成与网关服务端相对应的客户端代码;
步骤132,将所述客户端代码推送至网关服务端进行自动注册。
本实施例中,可以将所述注册服务的服务配置信息转化成与网关服务端相对应的客户端代码,通过与网关的接口服务建立器https(超文本传输协议)请求连接,将所述客户端代码推送至网关服务端进行自动注册,这样可以将注册服务的服务配置信息转化成网关服务端可以识别并接收的客户端代码,便于网络服务自动注册的完成。
图5示出了本发明的一可选的具体实施例提供的一种应用服务注册系统,具体可以包括:
页面网关端、网关集群端以及数据库端;
页面网关端可以包括:服务注册模块、服务发布模块、应用注册模块以及服务测试模块;
网关集群端可以包括:测试环境Kong的进程通信机制(Nginx)以及生产环境Kong的进程通信机制(Nginx);
其中,测试环境Kong的进程通信机制以及生产环境Kong的进程通信机制(Nginx)分别可以包括:路径模块(Route)、服务模块(Sevice)、上游模块(Upstream)以及Plugin计算机应用程序;
所述Plugin计算机应用程序通过Lua脚本语言与所述路径模块(Route)、服务模块(Sevice)、上游模块(Upstream)进行数据交互;
数据库端可以包括:本地数据库、测试环境数据库以及生产环境数据库;
所述应用服务注册系统还包括:网关接口、代码自动扫描模块(CIS,CodeIntelligence Scan)、版本对比模块(VC,Version Control)以及自动注册模块(AR,Automatic Registration);
网关接口获取应用服务所引用的至少一个功能代码包的,并根据所述至少一个功能代码包的服务配置信息,将所述注册服务的服务配置信息,通过代码自动扫描模块、版本对比模块以及自动注册模块进行处理后,生成与所述功能代码包对应的注册服务的服务配置信息,并将所述与所述功能代码包对应的注册服务的服务配置信息,发送至网关服务端进行自动注册。
其中,自动注册模块将经过版本对比的服务配置信息转化成客户端代码,通过与网关的接口服务建立起https请求连接,将API服务信息通过restful接口推送至网关系统服务端,完成自动注册;
自动注册模块可以包括:报文接收单元、执行单元和验证单元三个可信组件功能子模块;
其中,所述报文接收单元负责将版本对比模块生成的最新版本的服务配置信息通过报文获取过来,并转化成自动注册模块的执行单元能够识别的服务配置数据;
所述执行单元负责将所述服务配置数据推送给网关系统进行注册,同时完成本地数据库入库操作,并将待注册数据更新状态标注为“已完成注册”;
所述验证单元是针对已完成网关注册的API服务自动发起调用测试,确保注册成功且生效。
本发明的上述实施例,可以智能的发现API服务并且自动注册网络服务到网关,大幅提高了网络服务注册时所需的运维以及开发效率和准确性,杜绝了这一过程中会产生错误的情况,有效的减少了运维和开发的成本,提升了系统的可靠性。
该图5中,注册服务的服务配置信息自动注册到网关上之后,存储于网关的本地数据库中,之后可以基于该本地数据库中存储的注册服务的服务配置信息自动发布到测试环境数据库,由测试环境调用;再进一步通过人工发布的方式发布到生产环境数据库中,由生产环境调用;进一步地,该网关还可以具有可视化的页面,在页面上对本地数据库中的注册服务的配置信息进行相关的操作。
图6示出了本发明实施例提供的一种应用服务注册装置60,所述装置60包括:
获取模块61,用于获取应用服务所引用的至少一个功能代码包;
处理模块62,用于根据所述至少一个功能代码包的服务配置信息,生成与所述功能代码包对应的注册服务的服务配置信息;
发送模块63,用于将所述注册服务的服务配置信息,发送至网关服务端进行自动注册。
可选的,获取应用服务所引用的至少一个功能代码包,包括:
扫描自动注册工具库,获得所述应用服务的编码阶段所引用的至少一个功能代码包,所述自动注册工具库中包括所述应用服务的编码阶段所引用的至少一个功能代码包。
可选的,根据所述至少一个功能代码包的服务配置信息,生成与所述功能代码包对应的注册服务的服务配置信息,包括:
获得所述至少一个功能代码包的应用程序接口API类的服务配置信息;
根据所述至少一个功能代码包的API类的服务配置信息,生成与所述功能代码包对应的注册服务的服务配置信息。
可选的,所述API类的服务配置信息包括:服务变量值类参数和/或函数调用类参数。
可选的,根据所述至少一个功能代码包的API类的服务配置信息,生成与所述功能代码包对应的注册服务的服务配置信息,包括:
遍历至少一个功能代码包的API类的服务配置信息,若所述功能代码包的API类的服务配置信息为服务变量值类参数,通过赋值语句将所述服务变量值类参数抽象成一个对象符号,构建一条信息流数据;
若所述功能代码包的API类的服务配置信息为函数调用类参数,根据预设规则将所述函数调用类参数抽象成一个对象符号,构建一条信息流数据;
遍历构建的多个信息流数据,判断信息流数据是否是API服务注册信息,如果是,则生成所述功能代码包对应的注册服务的服务配置信息,否则过滤该条信息流数据。
可选的,所述处理模块62还可以用于:
将所述注册服务的服务配置信息与网关服务端保存的服务配置信息进行对比,若二者一致,确认所述注册服务不需要注册,否则确认所述注册服务需要注册;
将需要注册的所述注册服务的服务配置信息覆盖所述网关服务端保存的服务配置信息。
可选的,将所述注册服务的服务配置信息,发送至网关服务端进行自动注册,包括:
将所述注册服务的服务配置信息转化成与网关服务端相对应的客户端代码;
将所述客户端代码推送至网关服务端进行自动注册。
需要说明的是,该实施例中,该装置是与上述方法对应的装置,上述方法实施例中的所有实现方式均适用于该装置的实施例中,也能达到相同的技术效果。
图7示出了本发明的上述实施例所述的应用服务注册装置的模块架构,具体可以包括:
代码自动扫描模块(CIS,Code Intelligence Scan)、版本对比模块(VC,VersionControl)以及自动注册模块(AR,Automatic Registration);
所述代码自动扫描模块可以包括但不限于:业务代码和代码扫描单元功能子模块,分别对应于上述获取模块和处理模块。
通过上述各模块及单元,基于开发人员的开发编码习惯,通过功能代码包注入和注解扫描的方式,将代码自动扫描模块和业务代码整合在一起,通过网关开放Restful(Representational State Transfer,代表性状态转移)接口向API网关进行API(Application Program Interface,应用程序接口)自动注册,整体流程如下:
代码扫描过程:由所述代码智能扫描模块提供能力,通过加载功能代码包,在API类上添加注释,实现代码自动扫描;
版本控制过程:由版本对比模块完成,所述代码智能扫描模块扫描获取的API信息与服务端的信息进行对比,实现版本控制;
自动注册过程:由所述自动注册模块实现,所述自动扫描模块将确认注册的服务配置信息转化成客户端代码,推送到API网关服务端,实现自动注册。
本发明实施例还提供了一种非易失性计算机存储介质,所述计算机存储介质存储有至少一可执行指令,该计算机可执行指令可执行上述任意方法实施例中的应用服务注册方法。
图8示出了本发明实施例提供的计算设备的结构示意图,本发明具体实施例并不对计算设备的具体实现做限定。
如图8所示,该计算设备可以包括:处理器(processor)、通信接口(Communications Interface)、存储器(memory)、以及通信总线。
其中:处理器、通信接口、以及存储器通过通信总线完成相互间的通信。通信接口,用于与其它设备比如客户端或其它服务器等的网元通信。处理器,用于执行程序,具体可以执行上述用于计算设备的应用服务注册方法实施例中的相关步骤。
具体地,程序可以包括程序代码,该程序代码包括计算机操作指令。
处理器可能是中央处理器CPU,或者是特定集成电路ASIC(Application SpecificIntegrated Circuit),或者是被配置成实施本发明实施例的一个或多个集成电路。计算设备包括的一个或多个处理器,可以是同一类型的处理器,如一个或多个CPU;也可以是不同类型的处理器,如一个或多个CPU以及一个或多个ASIC。
存储器,用于存放程序。存储器可能包含高速RAM存储器,也可能还包括非易失性存储器(non-volatile memory),例如至少一个磁盘存储器。
程序具体可以用于使得处理器执行上述任意方法实施例中的应用服务注册方法。程序中各步骤的具体实现可以参见上述应用服务注册方法实施例中的相应步骤和单元中对应的描述,在此不赘述。所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的设备和模块的具体工作过程,可以参考前述方法实施例中的对应过程描述,在此不再赘述。
在此提供的算法或显示不与任何特定计算机、虚拟系统或者其它设备固有相关。各种通用系统也可以与基于在此的示教一起使用。根据上面的描述,构造这类系统所要求的结构是显而易见的。此外,本发明实施例也不针对任何特定编程语言。应当明白,可以利用各种编程语言实现在此描述的本发明实施例的内容,并且上面对特定语言所做的描述是为了披露本发明实施例的最佳实施方式。
在此处所提供的说明书中,说明了大量具体细节。然而,能够理解,本发明的实施例可以在没有这些具体细节的情况下实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。
类似地,应当理解,为了精简本发明实施例并帮助理解各个发明方面中的一个或多个,在上面对本发明的示例性实施例的描述中,本发明实施例的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。然而,并不应将该公开的方法解释成反映如下意图:即所要求保护的本发明实施例要求比在每个权利要求中所明确记载的特征更多的特征。更确切地说,如下面的权利要求书所反映的那样,发明方面在于少于前面公开的单个实施例的所有特征。因此,遵循具体实施方式的权利要求书由此明确地并入该具体实施方式,其中每个权利要求本身都作为本发明的单独实施例。
本领域那些技术人员可以理解,可以对实施例中的设备中的模块进行自适应性地改变并且把它们设置在与该实施例不同的一个或多个设备中。可以把实施例中的模块或单元或组件组合成一个模块或单元或组件,以及此外可以把它们分成多个子模块或子单元或子组件。除了这样的特征和/或过程或者单元中的至少一些是相互排斥之外,可以采用任何组合对本说明书(包括伴随的权利要求、摘要和附图)中公开的所有特征以及如此公开的任何方法或者设备的所有过程或单元进行组合。除非另外明确陈述,本说明书(包括伴随的权利要求、摘要和附图)中公开的每个特征可以由提供相同、等同或相似目的替代特征来代替。
此外,本领域的技术人员能够理解,尽管在此的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本发明的范围之内并且形成不同的实施例。例如,在下面的权利要求书中,所要求保护的实施例的任意之一都可以以任意的组合方式来使用。
本发明的各个部件实施例可以以硬件实现,或者以在一个或者多个处理器上运行的软件模块实现,或者以它们的组合实现。本领域的技术人员应当理解,可以在实践中使用微处理器或者数字信号处理器(DSP)来实现根据本发明实施例的一些或者全部部件的一些或者全部功能。本发明实施例还可以实现为用于执行这里所描述的方法的一部分或者全部的设备或者装置程序(例如,计算机程序和计算机程序产品)。这样的实现本发明实施例的程序可以存储在计算机可读介质上,或者可以具有一个或者多个信号的形式。这样的信号可以从因特网网站上下载得到,或者在载体信号上提供,或者以任何其他形式提供。
应该注意的是上述实施例对本发明实施例进行说明而不是对本发明进行限制,并且本领域技术人员在不脱离所附权利要求的范围的情况下可设计出替换实施例。在权利要求中,不应将位于括号之间的任何参考符号构造成对权利要求的限制。单词“包含”不排除存在未列在权利要求中的元件或步骤。位于元件之前的单词“一”或“一个”不排除存在多个这样的元件。本发明实施例可以借助于包括有若干不同元件的硬件以及借助于适当编程的计算机来实现。在列举了若干装置的单元权利要求中,这些装置中的若干个可以是通过同一个硬件项来具体体现。单词第一、第二、以及第三等的使用不表示任何顺序。可将这些单词解释为名称。上述实施例中的步骤,除有特殊说明外,不应理解为对执行顺序的限定。
Claims (10)
1.一种应用服务注册方法,其特征在于,所述方法包括:
获取应用服务所引用的至少一个功能代码包;
根据所述至少一个功能代码包的服务配置信息,生成与所述功能代码包对应的注册服务的服务配置信息;
将所述注册服务的服务配置信息,发送至网关服务端进行自动注册。
2.根据权利要求1所述的应用服务注册方法,其特征在于,获取应用服务所引用的至少一个功能代码包,包括:
扫描自动注册工具库,获得所述应用服务的编码阶段所引用的至少一个功能代码包,所述自动注册工具库中包括所述应用服务的编码阶段所引用的至少一个功能代码包。
3.根据权利要求1所述的应用服务注册方法,其特征在于,根据所述至少一个功能代码包的服务配置信息,生成与所述功能代码包对应的注册服务的服务配置信息,包括:
获得所述至少一个功能代码包的应用程序接口API类的服务配置信息;
根据所述至少一个功能代码包的API类的服务配置信息,生成与所述功能代码包对应的注册服务的服务配置信息。
4.根据权利要求3所述的应用服务注册方法,其特征在于,所述API类的服务配置信息包括:服务变量值类参数和/或函数调用类参数。
5.根据权利要求4所述的应用服务注册方法,其特征在于,根据所述至少一个功能代码包的API类的服务配置信息,生成与所述功能代码包对应的注册服务的服务配置信息,包括:
遍历至少一个功能代码包的API类的服务配置信息,若所述功能代码包的API类的服务配置信息为服务变量值类参数,通过赋值语句将所述服务变量值类参数抽象成一个对象符号,构建一条信息流数据;
若所述功能代码包的API类的服务配置信息为函数调用类参数,根据预设规则将所述函数调用类参数抽象成一个对象符号,构建一条信息流数据;
遍历构建的多个信息流数据,判断信息流数据是否是API服务注册信息,如果是,则生成所述功能代码包对应的注册服务的服务配置信息,否则过滤该条信息流数据。
6.根据权利要求1所述的应用服务注册方法,其特征在于,还包括:
将所述注册服务的服务配置信息与网关服务端保存的服务配置信息进行对比,若二者一致,确认所述注册服务不需要注册,否则确认所述注册服务需要注册;
将需要注册的所述注册服务的服务配置信息覆盖所述网关服务端保存的服务配置信息。
7.根据权利要求1所述的应用服务注册方法,其特征在于,将所述注册服务的服务配置信息,发送至网关服务端进行自动注册,包括:
将所述注册服务的服务配置信息转化成与网关服务端相对应的客户端代码;
将所述客户端代码推送至网关服务端进行自动注册。
8.一种应用服务注册装置,其特征在于,所述装置包括:
获取模块,用于获取应用服务所引用的至少一个功能代码包;
处理模块,用于根据所述至少一个功能代码包的服务配置信息,生成与所述功能代码包对应的注册服务的服务配置信息;
发送模块,用于将所述注册服务的服务配置信息,发送至网关服务端进行自动注册。
9.一种计算设备,其特征在于,包括:处理器、存储器、通信接口和通信总线,所述处理器、所述存储器和所述通信接口通过所述通信总线完成相互间的通信;
所述存储器用于存放至少一可执行指令,所述可执行指令使所述处理器执行如权利要求1-7中任一项所述的方法对应的操作。
10.一种计算机存储介质,其特征在于,所述存储介质中存储有至少一可执行指令,所述可执行指令使处理器执行如权利要求1-7中任一项所述的方法对应的操作。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210581685.8A CN117176702A (zh) | 2022-05-26 | 2022-05-26 | 一种应用服务注册方法、装置及设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210581685.8A CN117176702A (zh) | 2022-05-26 | 2022-05-26 | 一种应用服务注册方法、装置及设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117176702A true CN117176702A (zh) | 2023-12-05 |
Family
ID=88934066
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210581685.8A Pending CN117176702A (zh) | 2022-05-26 | 2022-05-26 | 一种应用服务注册方法、装置及设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117176702A (zh) |
-
2022
- 2022-05-26 CN CN202210581685.8A patent/CN117176702A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6861720B2 (ja) | Fixプロトコルに基づくサービス実施方法、装置、及びシステム | |
CN109831466B (zh) | 微服务业务处理方法及nginx服务器 | |
CN111782530B (zh) | 一种远程调试方法、装置、系统、电子设备及存储介质 | |
CN112491948A (zh) | 非侵入式的单体应用微服务化方法、装置及计算机设备 | |
CN113687858A (zh) | 配置文件的检查方法、装置、电子设备及存储介质 | |
CN112579461A (zh) | 断言处理方法、系统和存储介质 | |
CN109600381B (zh) | 一种接口适配方法、装置及系统 | |
CN111046245A (zh) | 多源异构数据源融合计算方法、系统、设备和存储介质 | |
CN114328274A (zh) | 测试模板生成方法、装置、计算机设备和存储介质 | |
CN112765246B (zh) | 任务处理方法、装置、电子设备和存储介质 | |
CN112379965B (zh) | 沙盒文件映射系统、客户端装置、映射端装置、沙盒文件映射方法以及电子设备 | |
CN109522202B (zh) | 一种软件测试的方法和装置 | |
EP2445171A1 (en) | File transfer protocol client and implementing method thereof | |
CN109672732B (zh) | 一种接口适配方法、装置及系统 | |
CN117176702A (zh) | 一种应用服务注册方法、装置及设备 | |
CN116668520A (zh) | 一种基于网关的服务编排方法、系统、设备及存储介质 | |
CN114285774B (zh) | 流量录制方法、装置、电子设备及存储介质 | |
CN114301970B (zh) | 服务调用方法、装置、电子设备及存储介质 | |
CN113746851B (zh) | 一种支持实时解析grpc请求的代理系统和方法 | |
CN109816462A (zh) | 一种发票信息的识别方法及装置 | |
CN111373377A (zh) | 错误处理 | |
CN111552907A (zh) | 消息处理方法、装置、设备和存储介质 | |
CN112929321B (zh) | 一种鉴权方法、装置及终端设备 | |
CN114637555B (zh) | 一种批量获取物流信息通用方法 | |
CN112532478B (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 |