CN111984309A - 服务调用方法、装置、服务器及存储介质 - Google Patents
服务调用方法、装置、服务器及存储介质 Download PDFInfo
- Publication number
- CN111984309A CN111984309A CN202010897095.7A CN202010897095A CN111984309A CN 111984309 A CN111984309 A CN 111984309A CN 202010897095 A CN202010897095 A CN 202010897095A CN 111984309 A CN111984309 A CN 111984309A
- Authority
- CN
- China
- Prior art keywords
- service
- address
- target
- program
- discovery configuration
- 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 33
- 238000009434 installation Methods 0.000 claims abstract description 73
- 238000012545 processing Methods 0.000 claims description 2
- 238000010586 diagram Methods 0.000 description 6
- 230000004044 response Effects 0.000 description 4
- 238000004590 computer program Methods 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 230000001960 triggered effect Effects 0.000 description 3
- 230000009286 beneficial effect Effects 0.000 description 2
- 230000001419 dependent effect Effects 0.000 description 2
- 230000006978 adaptation Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect 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/70—Software maintenance or management
- G06F8/71—Version control; Configuration management
Abstract
本公开关于一种服务调用方法、装置、服务器及存储介质,涉及互联网技术领域,可以提高服务调用的成功率。本公开的实施例包括:获取程序的安装文件,所述安装文件包括所述程序可调用的目标服务的服务地址;基于所述安装文件部署所述程序,并将所述服务地址存储至所述程序的服务发现配置路径;在获取到针对所述目标服务的服务发现请求时,从所述服务发现配置路径读取所述服务地址,并基于所述服务地址执行所述目标服务调用。
Description
技术领域
本公开涉及互联网技术领域,尤其涉及服务调用方法、装置、服务器及存储介质。
背景技术
随着互联网技术的发展,微服务框架被提出。微服务框架是一项在云中部署应用和服务的新技术。微服务的基本思想在于考虑围绕着业务领域组件来创建应用,这些应用可独立地进行开发、管理和加速。微服务将服务封装成API(Application ProgrammingInterface,应用程序接口)的形式对外提供服务。
相关技术中,在对服务进行调用时,先进行服务订阅,通过服务订阅获取服务对应的服务地址,并在服务订阅成功后进行服务发现,通过服务发现调用服务。然而,在服务订阅的过程中可能会出现服务订阅失败的情况,服务订阅失败会导致服务发现失败,从而会导致服务调用失败,使得服务调用的成功率较低。
发明内容
本公开提供一种服务调用方法、装置、服务器及存储介质,以至少解决相关技术中服务调用的成功率较低的问题。本公开的技术方案如下:
根据本公开实施例的第一方面,提供一种服务调用方法,所述方法包括:
获取程序的安装文件,所述安装文件包括所述程序可调用的目标服务的服务地址;
基于所述安装文件部署所述程序,并将所述服务地址存储至所述程序的服务发现配置路径;
在获取到针对所述目标服务的服务发现请求时,从所述服务发现配置路径读取所述服务地址,并基于所述服务地址执行所述目标服务调用。
可选的,所述安装文件包括服务发现配置文件,所述服务发现配置文件为依据从服务配置中心获取的服务地址生成的文件,所述服务发现配置文件中存储有所述程序可调用的目标服务的服务地址,所述将所述服务地址存储至所述程序的服务发现配置路径,包括:
将所述服务发现配置文件存储至所述程序的服务发现配置路径;
所述从所述服务发现配置路径读取所述服务地址,并基于所述服务地址执行所述目标服务调用,包括:
从所述服务发现配置路径存储的所述服务发现配置文件中读取所述服务地址,并基于所述服务地址执行所述目标服务调用。
可选的,所述从所述服务发现配置路径存储的所述服务发现配置文件中读取所述服务地址之前,所述方法还包括:
在获取到针对所述目标服务的配置更新请求时,更新所述服务发现配置文件中存储的服务地址;
所述从所述服务发现配置路径存储的所述服务发现配置文件中读取所述服务地址,包括:
从所述服务发现配置文件中读取更新后的服务地址。
可选的,所述安装文件中包括的所述目标服务的服务地址为第一服务地址,所述基于所述服务地址执行所述目标服务调用,包括:
访问所述第一服务地址以对所述目标服务进行调用;
若针对所述第一服务地址的访问失败,则从服务配置中心获取所述目标服务的第二服务地址;
访问所述第二服务地址以对所述目标服务进行调用。
可选的,所述安装文件中包括的所述目标服务的服务地址至少包括第三服务地址和第四服务地址;
所述基于所述服务地址执行所述目标服务调用,包括:
从所述安装文件中获取所述第三服务地址;
访问所述第三服务地址以对所述目标服务进行调用;
若针对所述第三服务地址的访问失败,则从所述安装文件中获取所述第四服务地址;
访问所述第四服务地址以对所述目标服务进行调用。
可选的,所述安装文件中所述目标服务的服务地址通过在服务配置中心查找所述目标服务的服务名称获得,所述目标服务的服务名称通过在所述程序的源代码中识别预设标识获得,在所述源代码中所述服务名称通过所述预设标识标记。
根据本公开实施例的第二方面,提供一种服务调用装置,所述服务调用装置包括:
获取模块,被配置为执行获取程序的安装文件,所述安装文件包括所述程序可调用的目标服务的服务地址;
部署模块,被配置为执行基于所述安装文件部署所述程序,并将所述服务地址存储至所述程序的服务发现配置路径;
调用模块,被配置为执行在获取到针对所述目标服务的服务发现请求时,从所述服务发现配置路径读取所述服务地址,并基于所述服务地址执行所述目标服务调用。
可选的,所述安装文件包括服务发现配置文件,所述服务发现配置文件为依据从服务配置中心获取的服务地址生成的文件,所述服务发现配置文件中存储有所述程序可调用的目标服务的服务地址,所述部署模块包括:
存储单元,被配置为执行将所述服务发现配置文件存储至所述程序的服务发现配置路径;
所述调用模块包括:
调用单元,被配置为执行从所述服务发现配置路径存储的所述服务发现配置文件中读取所述服务地址,并基于所述服务地址执行所述目标服务调用。
可选的,所述服务调用装置还包括:
更新模块,被配置为执行在获取到针对所述目标服务的配置更新请求时,更新所述服务发现配置文件中存储的服务地址;
所述调用单元被配置为执行:
从所述服务发现配置文件中读取更新后的服务地址。
可选的,所述安装文件中包括的所述目标服务的服务地址为第一服务地址,所述调用模块包括:
第一访问单元,被配置为执行访问所述第一服务地址以对所述目标服务进行调用;
第一获取单元,被配置为执行若针对所述第一服务地址的访问失败,则从服务配置中心获取所述目标服务的第二服务地址;
第二访问单元,被配置为执行访问所述第二服务地址以对所述目标服务进行调用。
可选的,所述安装文件中包括的所述目标服务的服务地址至少包括第三服务地址和第四服务地址;
所述调用模块包括:
第二获取单元,被配置为执行从所述安装文件中获取所述第三服务地址;
第三访问单元,被配置为执行访问所述第三服务地址以对所述目标服务进行调用;
第三获取单元,被配置为执行若针对所述第三服务地址的访问失败,则从所述安装文件中获取所述第四服务地址;
第四访问单元,被配置为执行访问所述第四服务地址以对所述目标服务进行调用。
可选的,所述安装文件中所述目标服务的服务地址通过在服务配置中心查找所述目标服务的服务名称获得,所述目标服务的服务名称通过在所述程序的源代码中识别预设标识获得,在所述源代码中所述服务名称通过所述预设标识标记。
根据本公开实施例的第三方面,提供一种服务器,包括:
处理器;
用于存储所述处理器可执行指令的存储器;
其中,所述处理器被配置为执行所述指令,以实现如第一方面所述的服务调用方法。
根据本公开实施例的第四方面,提供一种存储介质,当所述存储介质中的指令由服务器的处理器执行时,使得服务器能够执行如第一方面所述的服务调用方法。
根据本公开实施例的第五方面,提供一种计算机程序产品,当所述计算机程序产品中的指令由服务器的处理器执行时,使得服务器能够执行如第一方面所述的服务调用方法。
本公开的实施例提供的技术方案至少带来以下有益效果:由于本公开实施例中将程序可调用的目标服务的服务地址预先存储至所述程序的服务发现配置路径,因此,在获取到针对所述目标服务的服务发现请求时能够直接从服务发现配置路径读取服务地址,从而在对服务进行调用时,不必进行服务订阅获取服务对应的服务地址,从而不会因为服务订阅失败导致服务调用失败,能够提高服务调用的成功率。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理,并不构成对本公开的不当限定。
图1是根据一示例性实施例示出的一种服务调用方法的流程图。
图2是根据一示例性实施例示出的一种服务调用装置框图。
图3是根据一示例性实施例示出的一种服务器的框图。
具体实施方式
为了使本领域普通人员更好地理解本公开的技术方案,下面将结合附图,对本公开实施例中的技术方案进行清楚、完整地描述。
需要说明的是,本公开的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本公开的实施例能够以除了在这里图示或描述的那些以外的顺序实施。以下示例性实施例中所描述的实施方式并不代表与本公开相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本公开的一些方面相一致的装置和方法的例子。
本公开实施例提供了一种微服务系统,包括服务器和编译平台,所述服务器和编译平台通信连接。
其中,所述服务器可以获取所述编译平台编译的程序的安装文件,安装所述程序,对外提供所述程序对应的服务;
所述编译平台可以基于程序的源代码生成所述程序的安装文件,所述安装文件中包括所述程序可调用的目标服务的服务地址。
在一种可能的实现方式中,所述微服务系统还包括部署平台,所述服务器可以通过所述部署平台与所述编译平台通信连接,所述部署平台可以接收所述编译平台发送的程序的安装文件,并将所述程序的安装文件部署在服务器上。
图1是根据一示例性实施例示出的一种服务调用方法的流程图,服务调用方法可以用于微服务系统的服务器中,如图1所示,包括以下步骤:
在步骤S101中,获取程序的安装文件,所述安装文件包括所述程序可调用的目标服务的服务地址。
其中,所述安装文件可用于在服务器上部署所述程序。在服务器上部署所述程序后,服务器能够对外提供所述程序对应的服务。所述程序可调用的目标服务可以是程序依赖的服务。在执行所述程序的过程中可以调用所述目标服务以实现所述程序的功能。所述服务地址可以包括网络地址,例如,可以包括IP(Internet Protocol Address,互联网协议地址)和端口,通过访问服务地址可以获取所述目标服务。为便于查找所述目标服务的服务地址,所述安装文件中可以包括所述目标服务的服务名称与服务地址的对应关系。
在步骤S102中,基于所述安装文件部署所述程序,并将所述服务地址存储至所述程序的服务发现配置路径。
其中,部署所述程序可以是在服务器上安装所述程序,或者将所述程序的安装文件拷贝到预设存储路径,以自动执行程序。所述服务发现配置路径可以是预先设置在服务器上的存储路径,用于在服务发现时从该服务发现配置路径读取服务名称对应的服务地址。
在步骤S103中,在获取到针对所述目标服务的服务发现请求时,从所述服务发现配置路径读取所述服务地址,并基于所述服务地址执行所述目标服务调用。
其中,所述服务发现请求可以是在执行所述程序的过程中触发的服务发现请求,可以是在执行所述程序的过程中且需要调用目标服务时触发所述服务发现请求。
需要说明的是,在相关技术中,调用目标服务之前需要订阅目标服务,通过订阅目标服务从服务配置中心获取目标服务对应的服务地址,在订阅目标服务到调用目标服务,需要等待较长时长,若订阅目标服务失败,则无法调用服务,会影响服务的可用性,且需要订阅目标服务再调用目标服务,服务调用较为繁琐。本实施例中,将程序可调用的目标服务的服务地址预先存储至所述程序的服务发现配置路径,在服务调用时能够直接从服务发现配置路径读取目标服务的服务地址,能够提高服务调用的成功率,且降低服务调用的繁琐程度。
本公开的实施例提供的技术方案至少带来以下有益效果:由于本公开实施例中将程序可调用的目标服务的服务地址预先存储至所述程序的服务发现配置路径,因此,在获取到针对所述目标服务的服务发现请求时能够直接从服务发现配置路径读取服务地址,从而在对服务进行调用时,不必进行服务订阅获取服务对应的服务地址,从而不会因为服务订阅失败导致服务调用失败,能够提高服务调用的成功率。
可选的,所述安装文件包括服务发现配置文件,所述服务发现配置文件为依据从服务配置中心获取的服务地址生成的文件,所述服务发现配置文件中存储有所述程序可调用的目标服务的服务地址,所述将所述服务地址存储至所述程序的服务发现配置路径,包括:
将所述服务发现配置文件存储至所述程序的服务发现配置路径;
所述从所述服务发现配置路径读取所述服务地址,并基于所述服务地址执行所述目标服务调用,包括:
从所述服务发现配置路径存储的所述服务发现配置文件中读取所述服务地址,并基于所述服务地址执行所述目标服务调用。
其中,所述服务发现配置文件用于在服务发现时从该服务发现配置文件读取服务名称对应的服务地址。为便于查找所述目标服务的服务地址,所述服务发现配置文件中可以包括所述目标服务的服务名称与服务地址的对应关系。所述从所述服务发现配置路径存储的所述服务发现配置文件中读取所述服务地址,可以是,在服务发现配置文件中查找目标服务的服务名称,依据服务名称与服务地址的对应关系,读取目标服务的服务地址。
需要说明的是,可以是在编译平台生成所述安装文件的过程中,编译平台从服务配置中心获取服务地址生成所述服务发现配置文件。示例地,编译平台可以向服务配置中心发送地址请求消息,所述地址请求消息用于请求获取所述服务名称对应的服务地址,服务配置中心接收到所述地址请求消息,将所述服务名称对应的服务地址发送至编译平台。
该实施方式中,通过在服务发现配置文件中预先存储程序可调用的目标服务的服务地址,在获取到针对所述目标服务的服务发现请求时,能够直接从服务发现配置文件中读取目标服务的服务地址,方便快捷,能够提升服务调用的速度。
可选的,所述从所述服务发现配置路径存储的所述服务发现配置文件中读取所述服务地址之前,所述方法还包括:
在获取到针对所述目标服务的配置更新请求时,更新所述服务发现配置文件中存储的服务地址;
所述从所述服务发现配置路径存储的所述服务发现配置文件中读取所述服务地址,包括:
从所述服务发现配置文件中读取更新后的服务地址。
其中,所述配置更新请求可以用于请求更新服务发现配置文件中存储的服务地址。可以在目标服务的服务地址有更新时,触发该配置更新请求。示例地,可以在服务配置中心接收到目标服务的服务地址更新的消息时,向服务器发送所述目标服务的配置更新请求。
该实施方式中,在目标服务的服务地址有更新时,能够通过更新所述服务发现配置文件中存储的服务地址对目标服务的服务地址进行更新,能够避免因目标服务的服务地址更新导致的服务调用失败,从而能够提高服务调用的成功率。
可选的,所述安装文件中包括的所述目标服务的服务地址为第一服务地址,所述基于所述服务地址执行所述目标服务调用,包括:
访问所述第一服务地址以对所述目标服务进行调用;
若针对所述第一服务地址的访问失败,则从服务配置中心获取所述目标服务的第二服务地址;
访问所述第二服务地址以对所述目标服务进行调用。
其中,可以按照预设协议与服务地址进行信息交互以对目标服务进行服务调用。所述针对所述第一服务地址的访问失败,可以是,在向第一服务地址发送访问请求消息后,预设时长内未接收到第一服务地址发送的访问响应消息;或者,接收到的第一服务地址发送的访问响应消息为不符合预设协议约定的消息。所述从服务配置中心获取所述目标服务的第二服务地址,可以是通过服务订阅从服务配置中心获取所述目标服务的第二服务地址。
该实施方式中,在通过所述安装文件中的目标服务的第一服务地址访问失败的情况下,能够通过服务订阅从服务配置中心获取所述目标服务的第二服务地址,避免因第一服务地址访问失败导致服务调用失败,从而能够提高服务调用的成功率。
可选的,所述安装文件中包括的所述目标服务的服务地址至少包括第三服务地址和第四服务地址;
所述基于所述服务地址执行所述目标服务调用,包括:
从所述安装文件中获取所述第三服务地址;
访问所述第三服务地址以对所述目标服务进行调用;
若针对所述第三服务地址的访问失败,则从所述安装文件中获取所述第四服务地址;
访问所述第四服务地址以对所述目标服务进行调用。
其中,所述安装文件可以存储有所述目标服务的服务名称与多个服务地址的对应关系。所述针对所述第三服务地址的访问失败,可以是,在向第三服务地址发送访问请求消息后,预设时长内未接收到第三服务地址发送的访问响应消息;或者,接收到的第三服务地址发送的访问响应消息为不符合预设协议约定的消息。
该实施方式中,在安装文件中存储有所述目标服务对应的多个服务地址,从而服务调用时在一个服务地址访问失败的情况下能够通过其他服务地址进行服务调用,避免因为一个服务地址访问失败导致服务调用失败,从而能够提高服务调用的成功率。
可选的,所述安装文件中所述目标服务的服务地址通过在服务配置中心查找所述目标服务的服务名称获得,所述目标服务的服务名称通过在所述程序的源代码中识别预设标识获得,在所述源代码中所述服务名称通过所述预设标识标记。
其中,所述安装文件可以通过微服务系统中的服务器或者编译平台生成。所述预设标识可以为文字、符号、字母或数字,或者,所述预设标识还可以是文字、符号、字母和数字中任意两项或多项的组合等等,本实施例对此不进行限定。所述预设标识可以设置为服务名称的前缀,或者可以设置为服务名称的后缀,等等,本实施例对此不进行限定。示例地,所述预设标识可以为“ks!”。程序可调用的目标服务可以是程序依赖的服务,可以在程序编译前,扫描出源代码中所有依赖的服务名称,例如,源代码中包括“ks!service-a ks!service-b”,则可以识别出“service-a”和“service-b”两个服务名称。为避免预设标识识别有误,可以在服务名称注册时进行限制,不允许使用预设标识作为服务名称。
另外,可以从服务配置中心查找所述服务名称获取所述目标服务的服务地址,示例地,可以向服务配置中心发送地址请求消息,所述地址请求消息用于请求获取所述服务名称对应的服务地址,服务配置中心接收到所述地址请求消息,将所述服务名称对应的服务地址发送至编译平台。
进一步的,所述安装文件可以包括服务发现配置文件,所述服务发现配置文件中可以包括所述目标服务的服务地址。为便于查找所述目标服务的服务地址,所述安装文件中可以包括所述目标服务的服务名称与服务地址的对应关系。
需要说明的是,若源代码中使用了错误的服务名称,则会无法成功获取所述目标服务的服务地址,因此,会中断编译,可以在编译平台生成安装文件的过程中提前发现该问题,避免在程序执行的过程中发现该问题导致服务调用失败。
该实施方式中,通过预设标识识别服务名称,将程序可调用的目标服务的服务地址存储至程序的安装文件,因此,服务器能够基于程序的安装文件读取服务地址,从而在对服务进行调用时,不必进行服务订阅获取服务对应的服务地址,从而不会因为服务订阅失败导致服务调用失败,能够提高服务调用的成功率。
作为一种具体的实施方式,编译平台基于预设标识从程序的源代码中识别所述程序可调用的目标服务的服务名称,在所述源代码中所述服务名称通过所述预设标识标记;编译平台基于所述服务名称获取所述目标服务的服务地址;编译平台基于所述程序的源代码生成所述程序的安装文件,所述安装文件中包括所述目标服务的服务地址。部署平台从编译平台获取程序的安装文件,将程序的安装文件部署至服务器。服务器基于所述安装文件部署所述程序,并将所述服务地址存储至所述程序的服务发现配置路径;服务器在获取到针对所述目标服务的服务发现请求时,从所述服务发现配置路径读取所述服务地址,并基于所述服务地址执行所述目标服务调用。
图2是根据一示例性实施例示出的一种服务调用装置框图。参照图2,该服务调用装置包括:
获取模块201,被配置为执行获取程序的安装文件,所述安装文件包括所述程序可调用的目标服务的服务地址;
部署模块202,被配置为执行基于所述安装文件部署所述程序,并将所述服务地址存储至所述程序的服务发现配置路径;
调用模块203,被配置为执行在获取到针对所述目标服务的服务发现请求时,从所述服务发现配置路径读取所述服务地址,并基于所述服务地址执行所述目标服务调用。
可选的,所述安装文件包括服务发现配置文件,所述服务发现配置文件为依据从服务配置中心获取的服务地址生成的文件,所述服务发现配置文件中存储有所述程序可调用的目标服务的服务地址,所述部署模块202包括:
存储单元,被配置为执行将所述服务发现配置文件存储至所述程序的服务发现配置路径;
所述调用模块203包括:
调用单元,被配置为执行从所述服务发现配置路径存储的所述服务发现配置文件中读取所述服务地址,并基于所述服务地址执行所述目标服务调用。
可选的,所述服务调用装置还包括:
更新模块,被配置为执行在获取到针对所述目标服务的配置更新请求时,更新所述服务发现配置文件中存储的服务地址;
所述调用单元被配置为执行:
从所述服务发现配置文件中读取更新后的服务地址。
可选的,所述安装文件中包括的所述目标服务的服务地址为第一服务地址,所述调用模块203包括:
第一访问单元,被配置为执行访问所述第一服务地址以对所述目标服务进行调用;
第一获取单元,被配置为执行若针对所述第一服务地址的访问失败,则从服务配置中心获取所述目标服务的第二服务地址;
第二访问单元,被配置为执行访问所述第二服务地址以对所述目标服务进行调用。
可选的,所述安装文件中包括的所述目标服务的服务地址至少包括第三服务地址和第四服务地址;
所述调用模块203包括:
第二获取单元,被配置为执行从所述安装文件中获取所述第三服务地址;
第三访问单元,被配置为执行访问所述第三服务地址以对所述目标服务进行调用;
第三获取单元,被配置为执行若针对所述第三服务地址的访问失败,则从所述安装文件中获取所述第四服务地址;
第四访问单元,被配置为执行访问所述第四服务地址以对所述目标服务进行调用。
可选的,所述安装文件中所述目标服务的服务地址通过在服务配置中心查找所述目标服务的服务名称获得,所述目标服务的服务名称通过在所述程序的源代码中识别预设标识获得,在所述源代码中所述服务名称通过所述预设标识标记。
关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在服务调用方法的实施例中进行了详细描述,此处将不做详细阐述说明。
图3是根据一示例性实施例示出的一种服务器的框图。参照图3,服务器包括:
处理器301;
用于存储所述处理器301可执行指令的存储器302;
其中,所述处理器301被配置为执行所述指令,以实现上述实施例中用于服务器的服务调用方法。
在示例性实施例中,还提供了一种包括指令的存储介质,例如包括指令的存储器,上述指令可由服务器的处理器执行以完成上述方法。可选地,存储介质可以是非临时性计算机可读存储介质,例如,所述非临时性计算机可读存储介质可以是ROM、随机存取存储器(RAM)、CD-ROM、磁带、软盘和光数据存储设备等。
在示例性实施例中,还提供了一种计算机程序产品,包括一条或多条指令,该一条或多条指令可以由服务器的处理器执行,以完成上述服务调用方法。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本公开的其它实施方案。本申请旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由下面的权利要求指出。
应当理解的是,本公开并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本公开的范围仅由所附的权利要求来限制。
Claims (10)
1.一种服务调用方法,其特征在于,所述方法包括:
获取程序的安装文件,所述安装文件包括所述程序可调用的目标服务的服务地址;
基于所述安装文件部署所述程序,并将所述服务地址存储至所述程序的服务发现配置路径;
在获取到针对所述目标服务的服务发现请求时,从所述服务发现配置路径读取所述服务地址,并基于所述服务地址执行所述目标服务调用。
2.根据权利要求1所述的服务调用方法,其特征在于,所述安装文件包括服务发现配置文件,所述服务发现配置文件为依据从服务配置中心获取的服务地址生成的文件,所述服务发现配置文件中存储有所述程序可调用的目标服务的服务地址,所述将所述服务地址存储至所述程序的服务发现配置路径,包括:
将所述服务发现配置文件存储至所述程序的服务发现配置路径;
所述从所述服务发现配置路径读取所述服务地址,并基于所述服务地址执行所述目标服务调用,包括:
从所述服务发现配置路径存储的所述服务发现配置文件中读取所述服务地址,并基于所述服务地址执行所述目标服务调用。
3.根据权利要求2所述的服务调用方法,其特征在于,所述从所述服务发现配置路径存储的所述服务发现配置文件中读取所述服务地址之前,所述方法还包括:
在获取到针对所述目标服务的配置更新请求时,更新所述服务发现配置文件中存储的服务地址;
所述从所述服务发现配置路径存储的所述服务发现配置文件中读取所述服务地址,包括:
从所述服务发现配置文件中读取更新后的服务地址。
4.根据权利要求1所述的服务调用方法,其特征在于,所述安装文件中包括的所述目标服务的服务地址为第一服务地址,所述基于所述服务地址执行所述目标服务调用,包括:
访问所述第一服务地址以对所述目标服务进行调用;
若针对所述第一服务地址的访问失败,则从服务配置中心获取所述目标服务的第二服务地址;
访问所述第二服务地址以对所述目标服务进行调用。
5.根据权利要求1所述的服务调用方法,其特征在于,所述安装文件中包括的所述目标服务的服务地址至少包括第三服务地址和第四服务地址;
所述基于所述服务地址执行所述目标服务调用,包括:
从所述安装文件中获取所述第三服务地址;
访问所述第三服务地址以对所述目标服务进行调用;
若针对所述第三服务地址的访问失败,则从所述安装文件中获取所述第四服务地址;
访问所述第四服务地址以对所述目标服务进行调用。
6.根据权利要求1所述的服务调用方法,其特征在于,所述安装文件中所述目标服务的服务地址通过在服务配置中心查找所述目标服务的服务名称获得,所述目标服务的服务名称通过在所述程序的源代码中识别预设标识获得,在所述源代码中所述服务名称通过所述预设标识标记。
7.一种服务调用装置,其特征在于,所述服务调用装置包括:
获取模块,被配置为执行获取程序的安装文件,所述安装文件包括所述程序可调用的目标服务的服务地址;
部署模块,被配置为执行基于所述安装文件部署所述程序,并将所述服务地址存储至所述程序的服务发现配置路径;
调用模块,被配置为执行在获取到针对所述目标服务的服务发现请求时,从所述服务发现配置路径读取所述服务地址,并基于所述服务地址执行所述目标服务调用。
8.根据权利要求7所述的服务调用装置,其特征在于,所述安装文件包括服务发现配置文件,所述服务发现配置文件为依据从服务配置中心获取的服务地址生成的文件,所述服务发现配置文件中存储有所述程序可调用的目标服务的服务地址,所述部署模块包括:
存储单元,被配置为执行将所述服务发现配置文件存储至所述程序的服务发现配置路径;
所述调用模块包括:
调用单元,被配置为执行从所述服务发现配置路径存储的所述服务发现配置文件中读取所述服务地址,并基于所述服务地址执行所述目标服务调用。
9.一种服务器,其特征在于,包括:
处理器;
用于存储所述处理器可执行指令的存储器;
其中,所述处理器被配置为执行所述指令,以实现如权利要求1至6中任一项所述的服务调用方法。
10.一种存储介质,当所述存储介质中的指令由服务器的处理器执行时,使得服务器能够执行如权利要求1至6中任一项所述的服务调用方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010897095.7A CN111984309A (zh) | 2020-08-31 | 2020-08-31 | 服务调用方法、装置、服务器及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010897095.7A CN111984309A (zh) | 2020-08-31 | 2020-08-31 | 服务调用方法、装置、服务器及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN111984309A true CN111984309A (zh) | 2020-11-24 |
Family
ID=73440551
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010897095.7A Pending CN111984309A (zh) | 2020-08-31 | 2020-08-31 | 服务调用方法、装置、服务器及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111984309A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113259431A (zh) * | 2021-05-11 | 2021-08-13 | 中国工商银行股份有限公司 | 服务调用方法、服务调用装置、电子设备以及存储介质 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101674320A (zh) * | 2008-09-12 | 2010-03-17 | 阿里巴巴集团控股有限公司 | 一种集群环境下的服务寻址方法及装置 |
US20160142369A1 (en) * | 2014-11-18 | 2016-05-19 | Alibaba Group Holding Limited | Service addressing in distributed environment |
CN106941508A (zh) * | 2016-01-05 | 2017-07-11 | 阿里巴巴集团控股有限公司 | 服务调用方法、装置和系统 |
CN109150978A (zh) * | 2018-07-24 | 2019-01-04 | 北京百度网讯科技有限公司 | 调试微服务的方法和装置 |
CN109542641A (zh) * | 2018-11-14 | 2019-03-29 | 中国联合网络通信集团有限公司 | 服务调用方法、装置及系统 |
EP3462706A1 (en) * | 2017-09-29 | 2019-04-03 | Siemens Aktiengesellschaft | Information processing method, apparatus, and system for monitoring microservices |
CN110377419A (zh) * | 2019-06-11 | 2019-10-25 | 北京达佳互联信息技术有限公司 | 一种服务器调用方法、装置和电子设备 |
CN110933188A (zh) * | 2019-12-31 | 2020-03-27 | 深圳市优必选科技股份有限公司 | 远程服务的调用方法、系统、服务器及存储介质 |
-
2020
- 2020-08-31 CN CN202010897095.7A patent/CN111984309A/zh active Pending
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101674320A (zh) * | 2008-09-12 | 2010-03-17 | 阿里巴巴集团控股有限公司 | 一种集群环境下的服务寻址方法及装置 |
US20160142369A1 (en) * | 2014-11-18 | 2016-05-19 | Alibaba Group Holding Limited | Service addressing in distributed environment |
CN106941508A (zh) * | 2016-01-05 | 2017-07-11 | 阿里巴巴集团控股有限公司 | 服务调用方法、装置和系统 |
EP3462706A1 (en) * | 2017-09-29 | 2019-04-03 | Siemens Aktiengesellschaft | Information processing method, apparatus, and system for monitoring microservices |
CN109150978A (zh) * | 2018-07-24 | 2019-01-04 | 北京百度网讯科技有限公司 | 调试微服务的方法和装置 |
CN109542641A (zh) * | 2018-11-14 | 2019-03-29 | 中国联合网络通信集团有限公司 | 服务调用方法、装置及系统 |
CN110377419A (zh) * | 2019-06-11 | 2019-10-25 | 北京达佳互联信息技术有限公司 | 一种服务器调用方法、装置和电子设备 |
CN110933188A (zh) * | 2019-12-31 | 2020-03-27 | 深圳市优必选科技股份有限公司 | 远程服务的调用方法、系统、服务器及存储介质 |
Non-Patent Citations (1)
Title |
---|
刘琰翔: "面向海量微服务的高可用服务注册中心的研究与实现", 《中国优秀硕士学位论文全文数据库 (信息科技辑)》, no. 1 * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113259431A (zh) * | 2021-05-11 | 2021-08-13 | 中国工商银行股份有限公司 | 服务调用方法、服务调用装置、电子设备以及存储介质 |
CN113259431B (zh) * | 2021-05-11 | 2022-11-11 | 中国工商银行股份有限公司 | 服务调用方法、服务调用装置、电子设备以及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109547570B (zh) | 服务注册方法、装置、注册中心管理设备及存储介质 | |
US8239859B2 (en) | Method, system, terminal and device management server for installing software components | |
WO2017067230A1 (zh) | 一种基于微服务架构扩展软件功能的方法及装置 | |
JP3651587B2 (ja) | デバイスの異なるタイプに対する命名規則を使用する装置及び方法 | |
CN101571809B (zh) | 一种插件注册的实现方法及其装置 | |
US8161135B2 (en) | Device identification number based name service | |
CN110463162B (zh) | 应用部署方法、装置及系统 | |
US11057827B1 (en) | Provisioning an embedded universal integrated circuit card (eUICC) of a mobile communication device | |
CN112445865B (zh) | 自动化部署区块链网络的方法、装置及云计算平台 | |
CN110781083B (zh) | 一种h5客户端代码设置多环境测试方法和系统 | |
CN111865905B (zh) | 一种基于Ukey的通信方法、装置和存储介质 | |
CN112035122B (zh) | 一种接口部署方法、系统及存储介质 | |
CN111984309A (zh) | 服务调用方法、装置、服务器及存储介质 | |
CN105744511B (zh) | 安卓系统适配模块动态更新方法、客户端及服务器 | |
CN111339055A (zh) | 大数据集群扩容方法及装置 | |
CN116755788A (zh) | 一种线上规则修改方法、装置、设备及存储介质 | |
CN112702441B (zh) | 基于容器的访问数据处理方法、装置、系统及存储介质 | |
CN110727416B (zh) | 开发框架的生成方法及相关装置 | |
CN112752258A (zh) | 一种eSIM卡的开通方法、手机终端及业务受理系统 | |
CN111741102A (zh) | 分布式微服务应用的升级方法及装置 | |
CN111526044A (zh) | 一种交换机与服务器之间链路发现方法及设备、介质 | |
CN111651469A (zh) | 一种管理区块链系统合约的方法和装置 | |
CN116074117B (zh) | 基于企业微服务架构的微服务访问控制方法和装置 | |
CN107864068B (zh) | 一种基于dpi技术的应用识别系统及方法 | |
CN116975477A (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 | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20201124 |