CN114217995A - 一种数据获取方法、装置、计算机设备及存储介质 - Google Patents
一种数据获取方法、装置、计算机设备及存储介质 Download PDFInfo
- Publication number
- CN114217995A CN114217995A CN202111569758.3A CN202111569758A CN114217995A CN 114217995 A CN114217995 A CN 114217995A CN 202111569758 A CN202111569758 A CN 202111569758A CN 114217995 A CN114217995 A CN 114217995A
- Authority
- CN
- China
- Prior art keywords
- target
- micro
- service
- data acquisition
- candidate
- 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
Images
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/46—Multiprogramming arrangements
- G06F9/54—Interprogram communication
- G06F9/547—Remote procedure calls [RPC]; Web services
-
- 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/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5027—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
- G06F9/5038—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering the execution order of a plurality of tasks, e.g. taking priority or time dependency constraints into consideration
-
- 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/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5083—Techniques for rebalancing the load in a distributed system
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本申请提供一种数据获取方法、装置、计算机设备及存储介质,可以应用于数据分析技术领域等,用于解决分布式系统的系统风险较高的问题。该方法包括:接收来自目标对象的数据获取请求,其中,所述数据获取请求包括用于唯一表征所述目标对象的对象标识;从各个备选微服务中,选取与所述对象标识相匹配的目标微服务;确定成功调用所述目标微服务时,获取所述数据获取请求对应的目标数据,从而,各个备选微服务可以并行,避免数据迁移或重构过程中,无法获取数据的情况,降低了分布式系统的系统风险。
Description
技术领域
本申请涉及数据分析技术领域,尤其涉及一种数据获取方法、装置、计算机设备及存储介质。
背景技术
随着科技的不断发展,传统的单体系统架构由于耦合性强,代码量大,维护困难等原因,越来越多的设备采用分布式系统。
由于分布式系统包含较多微服务,复杂度高,分布式系统中,某微服务进行升级或重构,或新增微服务之后,使得调用微服务获取数据时的调用关系复杂。
可见,相关技术下,分布式系统的系统风险较高。
发明内容
本申请实施例提供了一种数据获取方法、装置、计算机设备及存储介质,以解决分布式系统的系统风险较高的问题。
第一方面,提供一种数据获取方法,包括:
接收来自目标对象的数据获取请求,其中,所述数据获取请求包括用于唯一表征所述目标对象的对象标识;
从各个备选微服务中,选取与所述对象标识相匹配的目标微服务;
确定成功调用所述目标微服务时,获取所述数据获取请求对应的目标数据。
可选的,所述对象标识包括所述目标对象的目标token信息;
则从各个备选微服务中,选取与所述对象标识相匹配的目标微服务,包括:
获取所述各个备选微服务与各个备选token信息之间的第一映射关系;
从所述第一映射关系中,确定存在所述目标token信息对应的备选微服务时,获得与所述对象标识相匹配的目标微服务;
确定不存在所述目标token信息对应的备选微服务时,基于指定微服务获得与所述对象标识相匹配的目标微服务。
可选的,所述对象标识还包括所述目标对象的目标ID;
则从所述第一映射关系中,确定存在所述目标token信息对应的备选微服务时,获得与所述对象标识相匹配的目标微服务,包括:
从所述第一映射关系中,确定存在所述目标token信息对应的多个备选微服务时,获取所述各个备选微服务与各个备选ID之间的第二映射关系;
基于所述第二映射关系,从所述多个备选微服务中,确定所述目标ID对应的目标微服务。
可选的,所述数据获取请求还包括所述目标数据所属目标分布式系统的系统标识;
则从各个备选微服务中,选取与所述对象标识相匹配的目标微服务,包括:
从各个备选微服务中,选取与所述对象标识相匹配的多个备选微服务;
基于所述各个备选微服务与各个系统标识之间的第三映射关系,从所述多个备选微服务中,确定所述目标分布式系统的系统标识对应的目标微服务。
可选的,所述数据获取请求还包括所述目标数据的链接地址;
则从各个备选微服务中,选取与所述对象标识相匹配的目标微服务,包括:
从各个备选微服务中,选取与所述对象标识相匹配的多个备选微服务;
基于所述各个备选微服务与各个链接地址之间的第四映射关系,从所述多个备选微服务中,确定所述目标数据的链接地址对应的目标微服务。
可选的,所述方法还包括:
确定未成功调用所述目标微服务时,调用指定微服务,获取所述数据获取请求对应的目标数据。
第二方面,提供一种数据获取装置,包括:
收发模块:用于接收来自目标对象的数据获取请求,其中,所述数据获取请求包括用于唯一表征所述目标对象的对象标识;
处理模块:用于从各个备选微服务中,选取与所述对象标识相匹配的目标微服务;
所述处理模块还用于:确定成功调用所述目标微服务时,获取所述数据获取请求对应的目标数据。
可选的,所述对象标识包括所述目标对象的目标token信息;
则所述处理模块具体用于:
获取所述各个备选微服务与各个备选token信息之间的第一映射关系;
从所述第一映射关系中,确定存在所述目标token信息对应的备选微服务时,获得与所述对象标识相匹配的目标微服务;
确定不存在所述目标token信息对应的备选微服务时,基于指定微服务获得与所述对象标识相匹配的目标微服务。
可选的,所述对象标识还包括所述目标对象的目标ID;
则所述处理模块具体用于:
从所述第一映射关系中,确定存在所述目标token信息对应的多个备选微服务时,获取所述各个备选微服务与各个备选ID之间的第二映射关系;
基于所述第二映射关系,从所述多个备选微服务中,确定所述目标ID对应的目标微服务。
可选的,所述数据获取请求还包括所述目标数据所属目标分布式系统的系统标识;
则所述处理模块具体用于:
从各个备选微服务中,选取与所述对象标识相匹配的多个备选微服务;
基于所述各个备选微服务与各个系统标识之间的第三映射关系,从所述多个备选微服务中,确定所述目标分布式系统的系统标识对应的目标微服务。
可选的,所述数据获取请求还包括所述目标数据的链接地址;
则所述处理模块具体用于:
从各个备选微服务中,选取与所述对象标识相匹配的多个备选微服务;
基于所述各个备选微服务与各个链接地址之间的第四映射关系,从所述多个备选微服务中,确定所述目标数据的链接地址对应的目标微服务。
可选的,所述处理模块还用于:
确定未成功调用所述目标微服务时,调用指定微服务,获取所述数据获取请求对应的目标数据。
第三方面,提供一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现如第一方面所述的方法。
第四方面,提供一种计算机设备,包括:
存储器,用于存储程序指令;
处理器,用于调用所述存储器中存储的程序指令,按照获得的程序指令执行如第一方面所述的方法。
第五方面,提供一种计算机可读存储介质,所述存储介质存储有计算机可执行指令,所述计算机可执行指令用于使计算机执行如第一方面所述的方法。
本申请实施例中,在目标对象获取数据时,通过数据获取请求携带的用于唯一表征目标对象的对象标识,从各个备选微服务中,选取与对象标识相匹配的目标微服务,从而升级前的微服务和升级后的微服务,重构前的微服务和重构后的微服务,新增的微服务,各个备选微服务可以并行,可以避免大量数据迁移的过程,也可以避免数据迁移过程中无法获取数据的情况,还可以避免无法路由到新增的微服务的情况等,降低了分布式系统的系统风险。
附图说明
图1a为相关技术中数据获取方法的一种原理示意图;
图1b为本申请实施例提供的数据获取方法的一种原理示意图一;
图1c为本申请实施例提供的数据获取方法的一种应用场景;
图2为本申请实施例提供的数据获取方法的一种流程示意图一;
图3a为本申请实施例提供的数据获取方法的一种流程示意图二;
图3b为本申请实施例提供的数据获取方法的一种流程示意图三;
图4为本申请实施例提供的数据获取方法的一种原理示意图二;
图5为本申请实施例提供的数据获取装置的一种结构示意图一;
图6为本申请实施例提供的数据获取装置的一种结构示意图二。
具体实施方式
为了使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述。
下面对本申请实施例中的部分用语进行解释说明,以便于本领域技术人员理解。
(1)微服务:
微服务是面相服务体系结构的一种变体,将单一应用程序划分成一组小的服务,服务之间互相协调、互相配合,为用户提供最终价值。
(2)Token信息:
Token信息是由服务端生成的一串字符串,可以作为客户端请求中的令牌,当客户端第一次登录后,服务端生成一个Token将此Token返回给客户端,客户端带上这个Token请求数据,无需带上登录时的用户名和密码。
(3)业务网关:
业务网关特指分布式系统中,微服务下的网关,能够按照不同的维度,包括URL、业务参数等,进行路由。业务网关可以为系统的服务请求,提供交易转发、反向代理等功能。主要的网关包括Zuul和SpringCloud Gateway等。
下面对本申请实施例提供的数据获取方法的应用领域进行简单介绍。
随着科技的不断发展,整个IT系统的复杂度日益增加,传统的单体系统架构由于耦合性强,代码量大,维护困难等原因,越来越多的设备采用分布式系统。分布式系统下的微服务迎合当前互联网快速发展,互联网应用快速迭代、快速部署而产生。
分布式系统包含较多微服务,复杂度高。微服务是对业务的聚合,并能够独立部署对外提供服务,从而在整体上降低系统的复杂度。同时,微服务一般是按照业务领域进行拆分,这样系统可以灵活的针对不同的业务领域进行升级和更新而不影响整体的系统运行,较好的满足了互联网系统7x24小时服务的需求。
随着云原生和微服务技术的发展,业界已经提供了非常成熟的分布式系统下的微服务框架,基于这些框架,能够简单快速的为业务系统搭建分布式系统的微服务平台。目前常见的微服务框架包括SpringCloud和Dubbo,能够实现服务的注册与发现、反向代理与负载均衡、路由控制、过载保护、服务降级等。
系统上线运行后,随着业务的开展,对象的增加,系统的复杂度会随着业务需求的增加而增加,往往一个外部交易,会跨越3到4个微服务,导致微服务内部的调用复杂。
分布式系统中,某微服务进行升级或重构,或新增微服务之后,使得调用微服务获取数据时的调用关系复杂。例如,随着业务发现,要对某一块在用的业务微服务进行整体替换、重构或是升级的时候,由于微服务之间复杂的关联关系,以及存量业务迁移等影响,会导致直接升级的成本和复杂度较高,需要耗费大量的资源进行系统分析、验证测试。
请参考图1a,为相关技术下,分布式系统的原理示意图。分布式系统包括应用程序、第三方小程序、网页等对象渠道。分布式系统在互联区,分别针对不同对象渠道提供不同的接入单元,包括应用程序接入单元、第三方小程序接入单元、网页接入单元。分布式系统在开放服务区,分别部署了整个系统的各个业务微服务,以养老院业务为例,可以包括微服务A,用于提供对象登录、鉴权等相关功能;微服务B,用于提供官方授权的与养老相关的业务功能;微服务C,用于提供各种硬件设备接入的标准化功能;微服务D,用于提供整个养老院系统的基础功能,如系统参数维护,广告配置,弹屏等功能;微服务E,可以是数据报表微服务,用于对数据进行整合,提供数据报表的相关功能;微服务F,用于提供老人评估、入住办理等功能;微服务G,可以是注册中心微服务,用于提供注册中心的相关功能等几十个微服务。从微服务G的注册清单可以看到每个微服务的情况。请参考表1,为微服务A、微服务B、微服务C、微服务D、微服务E、微服务F的微服务功能。
表1
通过微服务名称去微服务G进行寻址,可以确定实际的外呼地址。例如,如果要调用微服务F,则通过微服务F这个名称调用微服务G寻址服务,得到微服务F实际的ip和端口。然后通过http协议就可以访问微服务F上的具体交易。
那么,基于图1a,例如,请参考图1b,在替换旧微服务F为一个新微服务F时,微服务的替换动作,会导致系统的稳定性面临巨大的风险,即分布式系统的系统风险较高。
为了解决分布式系统的系统风险较高的问题,本申请提出一种数据获取方法。该方法中,接收来自目标对象的数据获取请求,其中,数据获取请求包括用于唯一表征目标对象的对象标识。从各个备选微服务中,选取与对象标识相匹配的目标微服务。确定成功调用目标微服务时,获取数据获取请求对应的目标数据。
本申请实施例中,在目标对象获取数据时,通过数据获取请求携带的用于唯一表征目标对象的对象标识,从各个备选微服务中,选取与对象标识相匹配的目标微服务,从而升级前的微服务和升级后的微服务,重构前的微服务和重构后的微服务,新增的微服务,各个备选微服务可以并行,可以避免大量数据迁移的过程,也可以避免数据迁移过程中无法获取数据的情况,还可以避免无法路由到新增的微服务的情况等,降低了分布式系统的系统风险。
下面对本申请提供的数据获取方法的应用场景进行说明。
请参考图1c,为本申请提供的数据加密方法的一种应用场景示意图。该应用场景中包括客户端101和服务端102。客户端101和服务端102之间可以通信。通信方式可以是采用有线通信技术进行通信,例如通过连接网线或串口线进行通信;也可以是采用无线通信技术进行通信,例如,通过蓝牙或无线保真(wireless fidelity,WIFI)等技术进行通信,具体不做限制。
客户端101泛指服务端的对象渠道设备,例如,终端设备、终端设备可以访问的第三方应用程序或终端设备可以访问的网页等。终端设备包括但不限于手机、电脑、智能交通设备、智能电器等。服务端102泛指可以获取数据的设备,例如,终端设备或服务器等。服务器包括但不限于云服务器、本地服务器或关联的第三方服务器等。客户端101和服务端102均可以采用云计算,以减少本地计算资源的占用;同样也可以采用云存储,以减少本地存储资源的占用。
作为一种实施例,客户端101和服务端102可以是同一个设备,具体不做限制。本申请实施例中,以客户端101和服务端102分别为不同的设备为例进行介绍。
下面基于图1c,以服务端102为主体,服务端102为服务器为例,对本申请实施例提供的数据获取方法进行具体介绍。请参考图2,为本申请实施例提供的数据获取方法的一种流程示意图。
S201,接收来自目标对象的数据获取请求。
目标对象可以是通过应用程序、第三方小程序或网页等对象渠道,通过相应的接入单元,向服务器发送数据获取请求。数据获取请求中可以包括用于唯一表征目标对象的对象标识。对象标识可以包括目标对象的目标token信息,还可以包括目标对象的对象ID等。
S202,从各个备选微服务中,选取与对象标识相匹配的目标微服务。
在接收来自目标对象的数据获取请求之后,服务器可以从各个备选微服务中,选取与对象标识相匹配的目标微服务。例如,基于图1b,目标对象需要向微服务F获取数据时,由于包含旧微服务F和新微服务F,服务器可以在接收数据获取请求之后,从旧微服务F和新微服务F中,选取与对象标识相匹配的目标微服务。
服务器选取与对象标识相匹配的目标微服务的方法有多种,下面以其中的三种为例进行介绍。
方法一:对象标识包括目标对象的目标token信息。
在对象标识包括目标对象的目标token信息时,服务器可以获取各个备选微服务与各个备选token信息之间的第一映射关系。请参考图3a,服务器在执行S31,获得第一映射关系之后,可以执行S32,从第一映射关系中,确定是否存在目标token信息对应的备选微服务。
如果确定存在目标token信息对应的备选微服务,那么执行S33,将该备选微服务作为目标微服务,获得与对象标识相匹配的目标微服务。如果确定不存在目标token信息对应的备选微服务,那么执行S34,服务器可以将指定微服务,作为目标微服务,获得与对象标识相匹配的目标微服务。
作为一种实施例,对象标识还可以包括目标对象的目标ID,那么服务器从第一映射关系中,确定存在目标token信息对应的多个备选微服务时,可以获取各个备选微服务与各个备选ID之间的第二映射关系。服务器可以基于第二映射关系,从多个备选微服务中,确定目标ID对应的目标微服务。
服务器还可以在基于第一映射关系,确定不存在目标token信息对应的备选微服务时,请参考图3b,服务器可以执行S35,获取第二映射关系。在获得第二映射关系之后,服务器可以执行S36,基于第二映射关系,从多个备选微服务中,确定是否存在目标ID对应的备选微服务。如果存在目标ID对应的备选微服务,那么服务器执行S37,将该备选微服务作为目标微服务。如果不存在目标ID对应的备选微服务,那么服务器执行S38,将指定微服务作为目标微服务。
方法二:
数据获取请求还包括目标数据所属目标分布式系统的系统标识。
在数据获取请求包括目标数据所属目标分布式系统的系统标识时,服务器可以先通过方法一,从各个备选微服务中,选取与对象标识相匹配的多个备选微服务。服务器再基于各个备选微服务与各个系统标识之间的第三映射关系,从多个备选微服务中,确定目标分布式系统的系统标识对应的目标微服务。
服务器还可以先通过方法一,确定不存在目标token信息对应的备选微服务时,获取第三映射关系。服务器还可以先通过方法一,确定不存在目标ID对应的备选微服务时,获取第三映射关系。基于第三映射关系,从多个备选微服务中,确定是否存在目标分布式系统的系统标识对应的备选微服务。如果存在目标分布式系统的系统标识对应的备选微服务,那么将该备选微服务作为目标微服务。如果不存在目标分布式系统的系统标识对应的备选微服务,那么将指定微服务作为目标微服务。
方法三:
数据获取请求还包括目标数据的链接地址。
在数据获取请求包括目标数据的链接地址时,服务器可以先通过方法一,从各个备选微服务中,选取与对象标识相匹配的多个备选微服务。服务器再基于各个备选微服务与各个链接地址之间的第四映射关系,从多个备选微服务中,确定目标数据的链接地址对应的目标微服务。
服务器还可以先通过方法一,确定不存在目标token信息对应的备选微服务时,获取第四映射关系。服务器还可以先通过方法一,确定不存在目标ID对应的备选微服务时,获取第四映射关系。服务器还可以先通过方法二,确定不存在目标分布式系统的系统标识对应的备选微服务时,获取第四映射关系。
基于第四映射关系,服务器从多个备选微服务中,确定是否存在目标数据的链接地址对应的备选微服务。如果存在目标数据的链接地址对应的备选微服务,那么将该备选微服务作为目标微服务。如果不存在目标数据的链接地址对应的备选微服务,那么将指定微服务作为目标微服务。
目标数据的链接地址可以是交易的目的统一资源定位(Uniform ResourceLocator,URL)地址,还可以是目的网际互连协议(Internet Protocol,IP)地址等,具体不做限制。
作为一种实施例,上述三种方法可以同时结合使用,请参考图4,服务器在获得数据获取请求之后,可以获取第一映射关系、第二映射关系、第三映射关系和第四映射关系,并同时从第一映射关系、第二映射关系、第三映射关系和第四映射关系中寻找目标微服务。服务器确定第一映射关系、第二映射关系、第三映射关系和第四映射关系中,是否存在数据获取请求包含的目标token信息对应的备选微服务、是否存在数据获取请求包含的目标ID对应的备选微服务、是否存在数据获取请求包含的目标数据所属目标分布式系统的系统标识对应的备选微服务、是否存在数据获取请求包含的目标数据的链接地址对应的备选微服务,从而可以将选取出的备选微服务作为目标微服务,通过多维度的映射关系,选取目标微服务,使得选取目标微服务的过程更加准确。
S203,确定成功调用目标微服务时,获取数据获取请求对应的目标数据。
服务器在确定成功调用目标微服务时,可以从目标微服务获取数据获取请求对应的目标数据。
作为一种实施例,服务器在确定未成功调用目标微服务时,可以调用指定微服务,从指定微服务获取数据获取请求对应的目标数据。
作为一种实施例,如果目标微服务不是通过映射关系获得的,而是通过指定微服务获得的,那么服务器可以通过目标token信息,在第一映射关系中,建立指定微服务与目标token信息之间的映射关系,从而,在之后选取目标微服务的过程中,可以直接基于目标token信息,通过第一映射关系获得目标微服务,提高了获得目标微服务的效率。
下面对本申请实施例提供的数据获取方法进行示例介绍。
服务器在获得数据获取请求之后,通过数据获取请求中的目标token信息来判断路由到哪一个备选微服务。目标token信息与备选微服务的第一映射关系,可以通过Redis进行缓存,并设置合理的失效时间。第一映射关系可以是在路由过程中建立的,在最开始没有进行过路由时,接收的数据获取请求会默认调用一个指定微服务。在服务器通过该指定微服务没有成功获取数据,交易失败后,会调用其他备选微服务,当服务器通过其他备选微服务成功获取数据,交易成功时,可以建立目标token与该其他备选微服务之间的映射关系。指定微服务可以相当于系统中原始存在的微服务,其他备选微服务可以相当于系统中新增的微服务。如果所有微服务都调用失败,那么服务器可以记录异常日志,以备后续分析处理。
服务器可以通过二次开发Zuul或者SpringCloud Gateway进行微服务的路由,通过设置不同的映射关系,完成业务的转发。映射关系可以包括机构、用户,或者指定的URL等多维度的映射关系,可以满足不同用户访问需求。
本申请实施例不仅能够支持新旧微服务的灵活稳定切换,也可以满足为不同的养老机构进行单独路由,达到租户隔离的目的。Gateway框架配置机构维度的映射关系对应的路由规则,调用编写好的checkInsIdOrg2函数,通过数据获取请求中的机构ID,查询数据库中,机构维度的映射关系,判断这个机构到底是走原来的微服务F还是走新的微服务F。
在新的微服务F第一次上线后,可以先针对特定的试用用户单独开放交易访问,用于业务的验证。在新的微服务平稳运行后,可以逐步对存量用户进行迁移,最终完成新旧微服务的替换。
基于同一发明构思,本申请实施例提供一种数据获取装置,能够实现前述的数据获取方法对应的功能。请参考图5,该装置包括收发模块501和处理模块502,其中:
收发模块501:用于接收来自目标对象的数据获取请求,其中,数据获取请求包括用于唯一表征目标对象的对象标识;
处理模块502:用于从各个备选微服务中,选取与对象标识相匹配的目标微服务;
处理模块502还用于:确定成功调用目标微服务时,获取数据获取请求对应的目标数据。
在一种可能的实施例中,对象标识包括目标对象的目标token信息;
则处理模块502具体用于:
获取各个备选微服务与各个备选token信息之间的第一映射关系;
从第一映射关系中,确定存在目标token信息对应的备选微服务时,获得与对象标识相匹配的目标微服务;
确定不存在目标token信息对应的备选微服务时,基于指定微服务获得与对象标识相匹配的目标微服务。
在一种可能的实施例中,对象标识还包括目标对象的目标ID;
则处理模块502具体用于:
从第一映射关系中,确定存在目标token信息对应的多个备选微服务时,获取各个备选微服务与各个备选ID之间的第二映射关系;
基于第二映射关系,从多个备选微服务中,确定目标ID对应的目标微服务。
在一种可能的实施例中,数据获取请求还包括目标数据所属目标分布式系统的系统标识;
则处理模块502具体用于:
从各个备选微服务中,选取与对象标识相匹配的多个备选微服务;
基于各个备选微服务与各个系统标识之间的第三映射关系,从多个备选微服务中,确定目标分布式系统的系统标识对应的目标微服务。
在一种可能的实施例中,数据获取请求还包括目标数据的链接地址;
则处理模块502具体用于:
从各个备选微服务中,选取与对象标识相匹配的多个备选微服务;
基于各个备选微服务与各个链接地址之间的第四映射关系,从多个备选微服务中,确定目标数据的链接地址对应的目标微服务。
在一种可能的实施例中,处理模块502还用于:
确定未成功调用目标微服务时,调用指定微服务,获取数据获取请求对应的目标数据。
请参照图6,上述应用程序测试装置可以运行在计算机设备600上,数据存储程序的当前版本和历史版本以及数据存储程序对应的应用软件可以安装在计算机设备600上,该计算机设备600包括处理器680以及存储器620。在一些实施例中,该计算机设备600可以包括显示单元640,显示单元640包括显示面板641,用于显示由用户交互操作界面等。
在一种可能的实施例中,可以采用液晶显示器(Liquid Crystal Display,LCD)或有机发光二极管OLED(Organic Light-Emitting Diode)等形式来配置显示面板641。
处理器680用于读取计算机程序,然后执行计算机程序定义的方法,例如处理器680读取数据存储程序或文件等,从而在该计算机设备600上运行数据存储程序,在显示单元640上显示对应的界面。处理器680可以包括一个或多个通用处理器,还可包括一个或多个DSP(Digital Signal Processor,数字信号处理器),用于执行相关操作,以实现本申请实施例所提供的技术方案。
存储器620一般包括内存和外存,内存可以为随机存储器(RAM),只读存储器(ROM),以及高速缓存(CACHE)等。外存可以为硬盘、光盘、USB盘、软盘或磁带机等。存储器620用于存储计算机程序和其他数据,该计算机程序包括各客户端对应的应用程序等,其他数据可包括操作系统或应用程序被运行后产生的数据,该数据包括系统数据(例如操作系统的配置参数)和用户数据。本申请实施例中程序指令存储在存储器620中,处理器680执行存储器620中的程序指令,实现前文图论述的任意的一种方法。
上述显示单元640用于接收输入的数字信息、字符信息或接触式触摸操作/非接触式手势,以及产生与计算机设备600的用户设置以及功能控制有关的信号输入等。具体地,本申请实施例中,该显示单元640可以包括显示面板641。
显示面板641例如触摸屏,可收集用户在其上或附近的触摸操作(比如用户使用手指、触笔等任何适合的物体或附件在显示面板641上或在显示面板641的操作),并根据预先设定的程式驱动相应的连接装置。
在一种可能的实施例中,显示面板641可包括触摸检测装置和触摸控制器两个部分。其中,触摸检测装置检测玩家的触摸方位,并检测触摸操作带来的信号,将信号传送给触摸控制器;触摸控制器从触摸检测装置上接收触摸信息,并将它转换成触点坐标,再送给处理器680,并能接收处理器680发来的命令并加以执行。
其中,显示面板641可以采用电阻式、电容式、红外线以及表面声波等多种类型实现。除了显示单元640,在一些实施例中,计算机设备600还可以包括输入单元630,输入单元630可以包括图像输入设备631和其他输入设备632,其中其他输入设备可以但不限于包括物理键盘、功能键(比如音量控制按键、开关按键等)、轨迹球、鼠标、操作杆等中的一种或多种。
除以上之外,计算机设备600还可以包括用于给其他模块供电的电源690、音频电路660、近场通信模块670和RF电路610。计算机设备600还可以包括一个或多个传感器650,例如加速度传感器、光传感器、压力传感器等。音频电路660具体包括扬声器661和麦克风662等,例如计算机设备600可以通过麦克风662采集用户的声音,进行相应的操作等。
作为一种实施例,处理器680的数量可以是一个或多个,处理器680和存储器620可以是耦合设置,也可以是相对独立设置。
作为一种实施例,图6中的处理器680可以用于实现如图5中的收发模块501和处理模块502的功能。
作为一种实施例,图6中的处理器680可以用于实现前文论述的服务器或终端设备对应的功能。
本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储于一计算机可读取存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:移动存储设备、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
或者,本发明上述集成的单元如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明实施例的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,例如,通过计算机程序产品体现,该计算机程序产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备执行本发明各个实施例所述方法的全部或部分。而前述的存储介质包括:移动存储设备、ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
显然,本领域的技术人员可以对本申请进行各种改动和变型而不脱离本申请的精神和范围。这样,倘若本申请的这些修改和变型属于本申请权利要求及其等同技术的范围之内,则本申请也意图包含这些改动和变型在内。
Claims (10)
1.一种数据获取方法,其特征在于,包括:
接收来自目标对象的数据获取请求,其中,所述数据获取请求包括用于唯一表征所述目标对象的对象标识;
从各个备选微服务中,选取与所述对象标识相匹配的目标微服务;
确定成功调用所述目标微服务时,获取所述数据获取请求对应的目标数据。
2.根据权利要求1所述的方法,其特征在于,所述对象标识包括所述目标对象的目标token信息;
则从各个备选微服务中,选取与所述对象标识相匹配的目标微服务,包括:
获取所述各个备选微服务与各个备选token信息之间的第一映射关系;
从所述第一映射关系中,确定存在所述目标token信息对应的备选微服务时,获得与所述对象标识相匹配的目标微服务;
确定不存在所述目标token信息对应的备选微服务时,基于指定微服务获得与所述对象标识相匹配的目标微服务。
3.根据权利要求2所述的方法,其特征在于,所述对象标识还包括所述目标对象的目标ID;
则从所述第一映射关系中,确定存在所述目标token信息对应的备选微服务时,获得与所述对象标识相匹配的目标微服务,包括:
从所述第一映射关系中,确定存在所述目标token信息对应的多个备选微服务时,获取所述各个备选微服务与各个备选ID之间的第二映射关系;
基于所述第二映射关系,从所述多个备选微服务中,确定所述目标ID对应的目标微服务。
4.根据权利要求1~3任一项所述的方法,其特征在于,所述数据获取请求还包括所述目标数据所属目标分布式系统的系统标识;
则从各个备选微服务中,选取与所述对象标识相匹配的目标微服务,包括:
从各个备选微服务中,选取与所述对象标识相匹配的多个备选微服务;
基于所述各个备选微服务与各个系统标识之间的第三映射关系,从所述多个备选微服务中,确定所述目标分布式系统的系统标识对应的目标微服务。
5.根据权利要求1~3任一项所述的方法,其特征在于,所述数据获取请求还包括所述目标数据的链接地址;
则从各个备选微服务中,选取与所述对象标识相匹配的目标微服务,包括:
从各个备选微服务中,选取与所述对象标识相匹配的多个备选微服务;
基于所述各个备选微服务与各个链接地址之间的第四映射关系,从所述多个备选微服务中,确定所述目标数据的链接地址对应的目标微服务。
6.根据权利要求1~3任一项所述的方法,其特征在于,所述方法还包括:
确定未成功调用所述目标微服务时,调用指定微服务,获取所述数据获取请求对应的目标数据。
7.一种数据获取装置,其特征在于,包括:
收发模块:用于接收来自目标对象的数据获取请求,其中,所述数据获取请求包括用于唯一表征所述目标对象的对象标识;
处理模块:用于从各个备选微服务中,选取与所述对象标识相匹配的目标微服务;
所述处理模块还用于:确定成功调用所述目标微服务时,获取所述数据获取请求对应的目标数据。
8.一种计算机程序产品,包括计算机程序,其特征在于,该计算机程序被处理器执行时实现如权利要求1~6中任一所述方法的步骤。
9.一种计算机设备,其特征在于,包括:
存储器,用于存储程序指令;
处理器,用于调用所述存储器中存储的程序指令,按照获得的程序指令执行如权利要求1~6中任一项所述的方法。
10.一种计算机可读存储介质,其特征在于,所述存储介质存储有计算机可执行指令,所述计算机可执行指令用于使计算机执行如权利要求1~6中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111569758.3A CN114217995A (zh) | 2021-12-21 | 2021-12-21 | 一种数据获取方法、装置、计算机设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111569758.3A CN114217995A (zh) | 2021-12-21 | 2021-12-21 | 一种数据获取方法、装置、计算机设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114217995A true CN114217995A (zh) | 2022-03-22 |
Family
ID=80704650
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111569758.3A Pending CN114217995A (zh) | 2021-12-21 | 2021-12-21 | 一种数据获取方法、装置、计算机设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114217995A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116402584A (zh) * | 2023-04-23 | 2023-07-07 | 中航信移动科技有限公司 | 一种基于多数据源的事件生成方法、存储介质及电子设备 |
-
2021
- 2021-12-21 CN CN202111569758.3A patent/CN114217995A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116402584A (zh) * | 2023-04-23 | 2023-07-07 | 中航信移动科技有限公司 | 一种基于多数据源的事件生成方法、存储介质及电子设备 |
CN116402584B (zh) * | 2023-04-23 | 2024-03-22 | 中航信移动科技有限公司 | 一种基于多数据源的事件生成方法、存储介质及电子设备 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10379818B2 (en) | Multi-tenant, tenant-specific applications | |
US9886675B2 (en) | User support experience with automatically generated virtual environment | |
US10713108B2 (en) | Computing system issue detection and resolution | |
CN108345543B (zh) | 一种数据处理方法、装置、设备及存储介质 | |
CN111416845B (zh) | 一种配置边缘设备的方法、装置及存储介质 | |
US10235160B2 (en) | Controlled deployment of application feature | |
US20190102237A1 (en) | Recommending applications based on call requests between applications | |
CN104508678A (zh) | 商业数据系统中针对承租人的安全和数据隔离 | |
US20190213110A1 (en) | Object oriented data tracking on client and remote server | |
CN111478849B (zh) | 业务访问方法、装置和存储介质 | |
CN109983751A (zh) | 管理设备的管理服务迁移 | |
CN107992498B (zh) | 一种将数据导入数据仓库的方法及系统 | |
CN114040025B (zh) | 一种控制切换网络环境的方法、装置及电子设备 | |
CN115658348A (zh) | 微服务调用方法、相关装置及存储介质 | |
CN114217995A (zh) | 一种数据获取方法、装置、计算机设备及存储介质 | |
US9996230B2 (en) | Using sections for customization of applications across platforms | |
CN114490307A (zh) | 一种单元测试方法、装置及存储介质 | |
US10530860B2 (en) | Single multi-instance tenant computing system | |
CN111400072A (zh) | 接口调用方法、存储介质和相关设备 | |
Hu | Emergent trends in personal, mobile, and handheld computing Technologies | |
CN118069174A (zh) | 一种数据处理方法、数据交互方法和相关装置 | |
CN116383053A (zh) | 软件代码缺陷检测方法、装置、介质及设备 | |
US20180189290A1 (en) | Content object indexing and resolution system |
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 |