CN116578600A - 一种微服务数据聚合方法、系统、设备及存储介质 - Google Patents
一种微服务数据聚合方法、系统、设备及存储介质 Download PDFInfo
- Publication number
- CN116578600A CN116578600A CN202310576155.9A CN202310576155A CN116578600A CN 116578600 A CN116578600 A CN 116578600A CN 202310576155 A CN202310576155 A CN 202310576155A CN 116578600 A CN116578600 A CN 116578600A
- Authority
- CN
- China
- Prior art keywords
- data
- client
- sending
- micro
- target structure
- 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 50
- 230000002776 aggregation Effects 0.000 title claims abstract description 45
- 238000004220 aggregation Methods 0.000 title claims abstract description 45
- 238000003860 storage Methods 0.000 title claims abstract description 12
- 238000012545 processing Methods 0.000 claims abstract description 56
- 238000000547 structure data Methods 0.000 claims abstract description 56
- 230000004931 aggregating effect Effects 0.000 claims abstract description 27
- 238000013507 mapping Methods 0.000 claims description 52
- 238000004590 computer program Methods 0.000 claims description 10
- 230000006870 function Effects 0.000 description 13
- 230000000694 effects Effects 0.000 description 6
- 238000010586 diagram Methods 0.000 description 4
- 230000009286 beneficial effect Effects 0.000 description 3
- 230000005540 biological transmission Effects 0.000 description 3
- 238000006243 chemical reaction Methods 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 239000000284 extract Substances 0.000 description 2
- 238000000605 extraction Methods 0.000 description 2
- 238000003032 molecular docking Methods 0.000 description 2
- 230000001360 synchronised effect Effects 0.000 description 2
- 238000012423 maintenance Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000008569 process Effects 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Classifications
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请属于金融数据处理的技术领域,公开了一种微服务数据聚合方法、系统、设备及存储介质,所述方法包括:根据客户端的数据处理请求和预设的数据关联关系,聚合服务器向多个对应的微服务发送对应的数据获取请求;接收多个对应的微服务发送的多个对应的榜单数据;将多个对应的榜单数据聚合成目标结构数据;将目标结构数据发送至客户端;相较于现有技术,本申请统一将多个微服务的榜单数据进行聚合后,再将目标结构数据输出给客户端,减少了客户端获得数据的延迟时间。
Description
技术领域
本申请属于金融数据处理技术领域,尤其是涉及一种微服务数据聚合方法、系统、设备及存储介质。
背景技术
在金融数据处理领域,排行榜是用于体现金融产品价格涨幅关系,描述金融产品价值的一种多维表格;微服务是根据业务功能模块把一个单体的应用拆分成许多个独立的项目,在金融数据处理中,每个微服务都对应唯一的业务能力并能够输出对应的排行榜,以便于分析不同的金融产品的单个金融属性。
目前,在金融数据处理中,由于每个微服务都计算各自业务的排行榜、指标等数据,因此容易导致金融数据分散,对于客户端需要向不同的微服务获取多个字段对应的金融数据的整合数据的情况,例如,客户端需要分别向两个微服务发出请求获取A和B的字段,则需要等待某一个微服务的金融数据处理完毕回复客户端后,再向另一个微服务发出请求,如此会导致客户端获得的数据的延迟时间较大,实时性较差。
发明内容
本申请提供一种微服务数据聚合方法、系统、计算机设备及存储介质,用于减少客户端获得数据的延迟时间。
本申请的发明目的一采用如下技术方案实现:
一种微服务数据聚合方法,包括:
根据客户端的数据处理请求和预设的数据关联关系,向多个对应的微服务发送对应的数据获取请求;
接收所述多个对应的微服务发送的多个对应的榜单数据;
将所述多个对应的榜单数据聚合成目标结构数据;
将所述目标结构数据发送至所述客户端。
通过上述技术方案,本申请的方法先根据客户端的数据处理请求和预设的数据关联关系,向多个对应的微服务发送对应的数据获取请求,使多个对应的微服务接收到对应的数据获取请求后,生成并发送多个对应的榜单数据,再将接收到的榜单数据聚合为目标结构数据(例如三维柱型数据图表、二维数据表、数据宽表等),最后将目标结构数据发送至客户端,相较于现有技术,本申请的方法可以快速、统一地将多个微服务的榜单数据进行聚合后,再将目标结构数据输出给客户端,减少了客户端获得数据的延迟时间。
本申请进一步设置为:所述数据关联关系包括字段映射关系;所述根据客户端的数据处理请求和预设的数据关联关系,向多个对应的微服务发送对应的数据获取请求,包括:
从客户端的数据处理请求中提取得到多个待查询数据字段;
基于所述字段映射关系及多个所述待查询数据字段,生成多个不同的数据获取请求,并向多个对应的微服务发送对应的数据获取请求。
通过上述技术方案,数据关联关系包括字段映射关系,采用字段映射关系有利于高效编程和减少数据处理量;多个数据获取请求均为相互独立的数据拉取请求,在客户端的数据处理请求中提取得到多个待查询数据字段,在字段映射关系的基础上,同时将多个数据获取请求分别发送给对应的微服务,使对应的微服务接收到数据获取请求后进行数据拉取,相较于现有技术,本申请方法的各微服务拉取数据时相互独立互不影响,实现了微服务并行拉取数据的效果,具有较好的实时性。
本申请进一步设置为:基于所述字段映射关系及多个所述待查询数据字段,生成多个不同的数据获取请求,并向多个对应的微服务发送对应的数据获取请求,包括:
利用Protobuf协议将多个所述待查询数据字段转换为多个待调取字符串;
根据多个所述待调取字符串和预设的配置文件,确定所述字段映射关系;
基于多个所述待调取字符串和所述字段映射关系,生成多个不同的数据获取请求,并向多个对应的微服务发送对应的数据获取请求。
通过上述技术方案,通过Protobuf协议将待查询数据字段转换为多个待调取字符串,以利于配置文件对数据进行处理;各个待调取字符串通过配置文件得到对应的映射关系,在多个待调取字符串和字段映射关系的基础上,同时生成多个不同的数据获取请求,并发送给对应的微服务,使多个对应的微服务获得对应的数据获取请求时各自提取对应的榜单数据。
本申请进一步设置为:根据客户端的数据处理请求和预设的数据关联关系,向多个对应的微服务发送对应的数据获取请求,包括:
根据客户端的数据处理请求和预设的数据关联关系,通过预置的网关向多个对应的微服务发送对应的数据获取请求;
所述接收所述多个对应的微服务发送的多个对应的榜单数据,包括:
通过所述预置的网关接收所述多个对应的微服务发送的多个对应的榜单数据。
通过上述技术方案,网关连接着各个微服务,网关根据接收到的数据处理请求,路由到对应的微服务,网关再将多个微服务发出的多个对应的榜单数据发送至用于聚合数据的服务器,基于网关进行数据传输,当某个类型的微服务宕机时,其他未宕机的微服务仍然能够发送数据给网关(比如A类型的微服务设置有三台,分别为A1、A2和A3,其中微服务A1因不可控因素而宕机,此时网关会自动路由微服务A2和微服务A3,以拉取未宕机的微服务的数据),从而提高了数据收发的稳定性和实时性。
本申请进一步设置为:所述目标结构数据为数据宽表,在所述将所述目标结构数据发送至所述客户端后,所述方法还包括:
识别接收到的所述客户端的二次数据处理请求中的新增字段,基于所述配置文件及所述新增字段向对应的微服务发送对应的数据新增请求;
接收所述对应的微服务发送的对应的新增榜单数据;
将所述对应的新增榜单数据聚合到所述目标结构数据中;
将所述目标结构数据发送至所述客户端。
通过上述技术方案,目标结构数据为数据宽表,能够新增字段及数据;在用户通过客户端接收到目标结构数据后,如果用户还需要在目标结构数据基础上获取更多的字段数据,用户可以向客户端输入二次数据处理请求,本申请的方法将客户端的二次数据处理请求中的新增字段同时发送给对应的微服务,再将获取到的新增榜单数据并聚合到目标结构数据内,从而实现目标结构数据的数据拓展功能,以满足用户的实际需求。
本申请进一步设置为:识别接收到的所述客户端的二次数据处理请求中的新增字段,基于所述配置文件及所述新增字段向对应的微服务发送对应的数据新增请求,包括:
利用Protobuf协议将多个所述新增字段转换为多个新增调取字符串;根据多个所述新增调取字符串和对应修改后的配置文件,确定所述新增字段的映射关系;
基于多个所述新增调取字符串和所述新增字段的映射关系,生成多个不同的数据新增请求,并向对应的微服务发送对应的数据新增请求。
通过上述技术方案,通过Protobuf协议将新增字段转换为多个不同的新增调取字符串,当新增字段无法从配置文件获取映射关系时,还需要后端人员修改配置文件,为新增字段的增加对应的映射关系,在新增调取字符串和新增字段的映射关系的基础上,同时生成多个不同的数据新增请求,并发送给对应的微服务,使对应的微服务能够拉取对应的榜单数据。
本申请进一步设置为:在所述数据处理请求对应的待查询数据字段包含动态数据字段时,在所述将所述目标结构数据发送至所述客户端之后,所述方法还包括:
按预设数据获取频率,多次接收所述动态数据字段对应的微服务发送的动态榜单数据;
多次将所述动态榜单数据发送至所述客户端,以使所述客户端多次根据所述动态榜单数据对应更新所述目标结构数据。
通过上述技术方案,当用户需要获取动态数据时,可以向客户端输入包含动态数据字段的数据处理请求,本申请的方法在目标结构数据发送至客户端之后,还会按预设数据获取频率,多次接收动态数据字段对应的微服务发送的动态榜单数据,并将动态榜单数据更新至目标结构数据,相较于现有技术,本申请的方法还提高了聚合动态数据实时性。
本申请的发明目的二采用如下技术方案实现:
一种微服务数据聚合系统,包括:
请求发送模块,用于根据客户端的数据处理请求和预设的数据关联关系,向多个对应的微服务发送对应的数据获取请求;
数据接收模块,用于接收所述多个对应的微服务发送的多个对应的榜单数据;
数据聚合模块,用于将所述多个对应的榜单数据聚合成目标结构数据;
数据发送模块,用于将所述目标结构数据发送至所述客户端。
本申请的发明目的三采用如下技术方案实现:
一种计算机设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序是实现上述一种微服务数据聚合方法。
本申请的发明目的四采用如下技术方案实现:
一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现上述一种微服务数据聚合方法。
综上所述,本申请包括以下至少一种有益技术效果:
1、相较于现有技术,本申请的方法通过配置文件得到对应搜索字段的映射关系,同时生成多个不同的数据获取请求,并发送给对应的微服务,使多个对应的微服务获得对应的数据获取请求时各自提取对应的榜单数据,从而实现榜单数据的快速聚合,进而大幅度解放生产效率,已达到节约成本的效果。
2、相较于现有技术,本申请的方法能够实现数据的高效处理,可快速实现微服务的任意榜单数据的聚合。
3、相较于现有技术,本申请的方法节省了多个终端平台的人力的投入和对接成本,如果用户还需要拓展字段数据,只需一个后端人员修改配置文件即可,客户端无需写入大量的逻辑关系。
4、相较于现有技术,本申请的方法统一将多个微服务的榜单数据进行聚合后,再将目标结构数据输出给客户端,减少了客户端获得数据的延迟时间。
5、相较于现有技术,本申请方法的各微服务拉取数据时相互独立互不影响,具有较好的实时性。
附图说明
图1是本申请实施例一中微服务数据聚合方法的一流程图;
图2是本申请实施例一中多个微服务与聚合服务器的连接示意图;
图3是本申请实施例一中微服务数据聚合方法中步骤S10的流程图;
图4是本申请实施例一中微服务数据聚合方法中步骤S40的流程图;
图5是本申请实施例二中多个微服务、网关与聚合服务器的连接示意图;
图6是本申请实施例三中微服务数据聚合方法中步骤S40的流程图;
图7是本申请实施例三中基于数据宽表的三维数据图表;
图8是本申请实施例四中微服务数据聚合系统的一原理框图;
图9是本申请实施例五中的计算机设备示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例,基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
本申请实施例提供一种微服务数据聚合方法、系统、计算机设备及存储介质,用于减少客户端获得数据的延迟时间。
实施例一
如图1和图2所示,本申请实施例的一种微服务数据聚合方法,包括如下步骤:
S10:根据客户端的数据处理请求和预设的数据关联关系,向多个对应的微服务发送对应的数据获取请求。
在本实施例中,客户端主要指PC端、安卓端、IOS移动端和WEB端;数据处理请求包括数据字段,例如,A股票价格、涨幅、振幅等;数据关联关系包括字段映射关系和链表关系;数据获取请求包括数据字符串;本申请的方法发送数据获取请求的主体是聚合服务器。
具体地,根据客户端的处理请求和预设的数据关联关系,聚合服务器将数据处理请求转换为数据获取请求,并向多个对应的微服务发送对应的数据获取请求;相对于现有技术,本申请的方法,同时向多个微服务发送数据获取请求,每个微服务接收到数据获取请求开始拉取数据,每个微服务的数据获取请求都是一种独立的拉取请求,使多个微服务之间接收数据获取请求的时序上互不影响。
S20:接收多个对应的微服务发送的多个对应的榜单数据。
在本实施例中,榜单数据是指金融数据字段(价格、涨幅、成交量、成交额、主力净买额等)和对应数据字段的具体数值;每个对应的微服务均会在接收到数据获取请求之后,各自拉取一组对应的榜单数据发送至聚合服务器。
具体地,多个对应的微服务根据数据获取请求各自拉取榜单数据后,聚合服务器接收多个对应的微服务发送的多个对应的榜单数据,将多个对应的榜单数据作为待聚合数据。
S30:将多个对应的排行榜数据聚合成目标结构数据。
在本实施例中,目标结构数据主要指数据宽表结构。
具体地,聚合服务器将多个对应的榜单数据聚合为数据宽表,实现了将多个榜单数据进行同时汇总成数据宽表的效果,过程中聚合服务器无需对榜单数据进行计算,可以采用配置较低的聚合服务器以满足数据聚合的运行要求,以达到降低维护成本的效果。
S40:将目标结构数据发送至所述客户端。
在本实施例中,聚合服务器生成目标结构数据后直接将目标结构数据发送至客户端。
具体地,相较于现有技术,本申请方法的多个榜单数据抽取具有独立性,互不影响,时序性的冲突问题较少,将多个微服务的榜单数据统一进行聚合后为数据宽表后,再将数据宽表输出给客户端,从而减少了客户端获得数据的延迟时间。
在一实施方式中,数据关联关系包括字段映射关系,如图3所示,步骤S10,包括:
S11:从客户端的数据处理请求中提取得到多个待查询数据字段;
S12:基于字段映射关系及多个待查询数据字段,生成多个不同的数据获取请求,并向多个对应的微服务发送对应的数据获取请求。
在本实施例中,如果A微服务的榜单数据有字段A1、A2、A3...,B微服务的榜单数据有字段B1、B2、B3...,C微服务的榜单数据有字段C1、C2、C3...,此时客户端可能只需要A1、A2、B1、C1和C2字段,这个时候就需要配置拉取相应的服务榜单数据字段和待查询数据字段,根据映射关系生成多个不同的数据获取请求,并向多个对应的微服务发送对应的数据获取请求,具体的映射关系如下:
A1=JJ1;
A2=JJ2;
B1=JJ3;
...
C1=JJ4;
C2=JJ5。
具体地,采用字段映射关系将待查询数据字段转换为数据获取请求,有利于实现高效编程并节约数据处理流量;聚合服务器提取到待查询数据字段后,将待查询数据字段进行映射,生成多个不同的数据获取请求,
多个数据获取请求均为相互独立的数据拉取请求,时序关联上互不影响,将多个数据获取请求同时发送给对应的微服务,使对应的微服务接收到数据获取请求后开始根据数据获取请求内的对应字段进行数据拉取;相较于现有技术,本申请的各微服务接收到数据获取请求后拉取数据时,相互独立,时序上互不影响,进一步减少了客户端获得数据的延迟时间,具有更好的实时性。
其中,基于字段映射关系及多个待查询数据字段,生成多个不同的数据获取请求,并向多个对应的微服务发送对应的数据获取请求,包括:
S121:利用Protobuf协议将多个待查询数据字段转换为多个待调取字符串;
S122:根据多个待调取字符串和预设的配置文件,确定字段映射关系;
S123:基于多个待调取字符串和所述字段映射关系,生成多个不同的数据获取请求,并向多个对应的微服务发送对应的数据获取请求。
在本实施例中,Protobuf协议支撑待查询数据字段转化为字符串,可以根据实际情况配置在配置文件内;配置文件是一种ini文件,配置文件
内预先设置有用于实现映射关系(即数据关联关系)的函数,具体如下:
假设A服务有如下数据字段:
enum A
{
A1 = 1;//价格
A2 = 2;//涨幅
A3 = 3;//振幅
...
};
B服务有如下数据字段:
enum B
{
B1 = 1;//成交量
B2 = 2;//成交额
B3 = 3;//主力净买额
...
};
如果客户端需要拉取A、B服务中的某些榜单数据的字段和对应字段的数值,则根据待调取字符串和配置文件中预设的映射关系函数,得到数据获取请求,如下所示:
enum JJ
{
JJ1 = 1;//价格
JJ2 = 2;//涨幅
JJ3 = 3;//振幅
JJ4 = 4;//成交量
JJ5 = 5;//成交额
JJ6 = 7;//主力净买额
};
配置文件映射关系配置如下:
[A]
A1=JJ1;
A2=JJ2;
...
A3=JJ3;
[B]
B1=JJ4;
B2=JJ5;
...
B3=JJ6。
具体地,通过Protobuf协议将待查询数据字段转换为多个待调取字符串,以加快配置文件的处理速率;各个待调取字符串基于配置文件确定映射关系,同时生成多个不同的数据获取请求,并向多个对应的微服务发送对应的数据获取请求,使各微服务接收到数据获取请求后开始拉取数据,其中,每个微服务的数据获取请求都是一种独立的拉取请求,即A,B,C...N微服务接收到的数据获取请求都是相互独立的,不依赖某个数据获取请求接收到数据后再向另一个微服务发起请求;配置文件的函数FUN(A)向A微服务请求对应的接口的配置的字段,配置文件的函数FUN(B)向B微服务请求对应的接口的配置的字段,配置文件的函数FUN(C)向C微服务请求对应的接口的配置的字段...配置文件的函数FUN(N)向N微服务请求对应的接口的配置的字段;当客户端想要获取分布在不同微服务的榜单数据时,就只需要向客户端发出相应的数据处理请求即可实现对应的微服务的拉取对应字段的效果。
目标结构数据为数据宽表,其中,参照图4,在步骤S40后,包括:
S41:识别接收到的客户端的二次数据处理请求中的新增字段,基于配置文件及所述新增字段向对应的微服务发送对应的数据新增请求;
S42:接收对应的微服务发送的对应的新增榜单数据;
S43:将对应的新增榜单数据聚合到目标结构数据中;
S44:将目标结构数据发送至所述客户端。
在本实施例中,基于配置文件内的函数FUN(A)、FUN(B)、FUN(C)...FUN(N),若客户需要获取更多的金融数据,需要向客户端发送二次数据处理请求,此时若配置文件中缺少新增二次数据处理请求的映射关系,则后端人员需要修改配置文件,后端人员向A微服务配置函数新增聚合A4,A5两个字段,向B微服务配置函数新增聚合B4字段,对应配置文件的映射函数新增三个字段JJ7,JJ8,JJ9,来支持映射关系,具体修改方法如下:
enum JJ
{
JJ1 = 1;//价格
JJ2 = 2;//涨幅
JJ3 = 3;//振幅
JJ4 = 4;//成交量
JJ5 = 5;//成交额
JJ6 = 6;//主力净买额
JJ7 = 7;//新增字段的备注
JJ8 = 8;//新增字段的备注
JJ9 = 9;//新增字段的备注
};
[A]
A1=JJ1;
A2=JJ2;
A3=JJ3;
A4=JJ7;
A5=JJ8;
[B]
B1=JJ4;
B2=JJ5;
B3=JJ6;
B4=JJ9。
具体地,采用数据宽表作为目标结构数据,使后端人员能够随时根据用户需求新增字段;在用户通过客户端接收到目标结构数据后,如果用户还需要在目标结构数据基础上获取更多的字段数据,用户可以向客户端输入二次数据处理请求,聚合服务器根据二次数据请求,提取二次数据请求的新增字段,将这些新增字段进行映射处理后,同时发送给对应的多个微服务,使对应的多个微服务拉取对应的新增榜单数据,并将新增榜单数据送回聚合服务器,聚合服务器再将对应的新增榜单数据聚合到目标结构数据中,从而实现数据实时拓展的功能,以满足用户的实际需求,相较于现有技术,本申请的方法节省了多个终端平台的人力的投入和对接成本,如果用户还需要拓展字段数据,用户只需要向客户端输入二次数据处理请求,然后一个后端人员修改配置文件即可,聚合服务器对二次数据处理进行处理后发送给多个对应微服务,客户端无需写入大量的逻辑关系,以保证数据时序性正常的前提下,降低客户获取数据的延迟时间。
其中,步骤S41包括:
S411:利用Protobuf协议将多个新增字段转换为多个新增调取字符串;
S412:根据多个新增调取字符串和对应修改后的配置文件,确定新增字段的映射关系;
S413:基于多个新增调取字符串和新增字段的映射关系,生成多个不同的数据新增请求,并向对应的微服务发送对应的数据新增请求。
具体地,通过Protobuf协议将新增字段转换为多个不同的新增调取字符串,以利于配置文件基于映射关系生成数据新增请求,如果新增调取字符串中缺少对应的映射关系,需要后端人员在配置文件新增对应的映射关系,数据新增请求生成后发送给对应的微服务,使对应的微服务根据数据新增请求拉取对应的榜单数据,以配置聚合某个微服务的某些字段,进而为快速聚合扩展字段提供支持。
实施例二
在实施例一的基础上,参照图5,其中,步骤S10还包括:
根据客户端的数据处理请求和预设的数据关联关系,通过预置的网关向多个对应的微服务发送对应的数据获取请求;
其中,步骤S20,还包括:
通过预置的网关接收多个对应的微服务发送的多个对应的榜单数据。
在本实施例中,网关作为本申请系统数据传输的中间件,网关内设置有多种通讯协议,可以实现局域网和广域网之间的通讯。
具体地,采用网关作为本申请系统数据传输的中间件,网关连接着各个微服务和广域网络,根据数据处理请求,网关将根据数据处理请求路由到对应的微服务,按照预定频率获取微服务拉取对应的榜单数据,无需等待所有微服务拉取对应的榜单数据完毕后,再将多个微服务拉取的多个对应的榜单数据发送至聚合服务器,降低了某个类型的微服务宕机后不至于而拉取不到数据的可能性。
实施例三
参照图6和图7,在实施例一的基础上,在数据处理请求对应的待查询数据字段包含动态数据字段时,其中,步骤S40之后还包括:
S44:按预设数据获取频率,多次接收动态数据字段对应的微服务发送的动态榜单数据;
S45:多次将动态榜单数据发送至客户端,以使客户端多次根据动态榜单数据对应更新目标结构数据。
在本实施例中,数据获取频率根据实际情况设置,数据获取频率越高,获取得到的数据实时性越好,相对地,需要处理的数据量越大;目标结构数据是基于数据宽表的排行榜三维图;X坐标作为时间轴,Y坐标用于放置股票代码的多种字段数据,Z坐标即一个股票代码对应字段数据的数值,也就是要聚合的榜单数据,假设价格、涨幅字段在A服务,成交额在B服务...这样只要各个微服务的榜单数据,就可以扩展聚合服务的字段,聚合成为一张基于宽表结构的三维数据图表。
具体地,当用户需要获取动态数据时,可以向客户端输入包含动态数据字段的数据处理请求,聚合服务器将目标结构数据发送至客户端之后,还会按预设数据获取频率,多次接收动态数据字段对应的微服务发送的动态榜单数据,并将动态榜单数据更新至目标结构数据(即三维数据图表)内,使用户能够观测到金融数据的具体动态变化。
实施例四
参照图8,本申请实施例公开了一种微服务数据聚合系统,用于执行上述一种微服务数据聚合方法,一种微服务数据聚合系统与上述实施例中一种微服务数据聚合方法相对应。
本申请实施例一种微服务数据聚合系统,包括:
请求发送模块10,用于根据客户端的数据处理请求和预设的数据关联关系,向多个对应的微服务发送对应的数据获取请求;
数据接收模块20,用于接收所述多个对应的微服务发送的多个对应的榜单数据;
数据聚合模块30,用于将所述多个对应的榜单数据聚合成目标结构数据;
数据发送模块40,用于将所述目标结构数据发送至所述客户端。
其中,请求发送模块10包括:
提取子模块,用于从客户端的数据处理请求中提取得到多个待查询数据字段;
请求发送子模块,用于基于所述字段映射关系及多个所述待查询数据字段,生成多个不同的数据获取请求,并向多个对应的微服务发送对应的数据获取请求。
其中,请求发送子模块包括:
第一数据转换子模块,用于利用Protobuf协议将多个所述待查询数据字段转换为多个待调取字符串;
第一映射子模块,用于根据多个所述待调取字符串和预设的配置文件,确定所述字段映射关系;
第一数据发送子模块,用于基于多个所述待调取字符串和所述字段映射关系,生成多个不同的数据获取请求,并向多个对应的微服务发送对应的数据获取请求。
其中,请求发送模块10还包括:
网关发送子模块,用于根据客户端的数据处理请求和预设的数据关联关系,通过预置的网关向多个对应的微服务发送对应的数据获取请求。
其中,数据接收模块20包括:
网关接收子模块,用于通过所述预置的网关接收所述多个对应的微服务发送的多个对应的榜单数据。
其中,数据发送模块40包括:
数据新增子模块,用于识别接收到的所述客户端的二次数据处理请求中的新增字段,基于所述配置文件及所述新增字段向对应的微服务发送对应的数据新增请求;
新增数据接收子模块,用于接收所述对应的微服务发送的对应的新增榜单数据;
新增数据聚合子模块,用于将所述对应的新增榜单数据聚合到所述目标结构数据中;
新增数据发送子模块,用于将所述目标结构数据发送至所述客户端。
其中,数据新增子模块包括:
第二转换子模块,用于利用Protobuf协议将多个所述新增字段转换为多个新增调取字符串;
第二映射子模块,用于根据多个所述新增调取字符串和对应修改后的配置文件,确定所述新增字段的映射关系;
第二数据发送子模块,用于基于多个所述新增调取字符串和所述新增字段的映射关系,生成多个不同的数据新增请求,并向对应的微服务发送对应的数据新增请求。
其中,数据发送模块40还包括:
动态数据接收子模块,用于按预设数据获取频率,多次接收所述动态数据字段对应的微服务发送的动态榜单数据;
动态数据更新子模块,用于多次将所述动态榜单数据发送至所述客户端,以使所述客户端多次根据所述动态榜单数据对应更新所述目标结构数据。
本实施例提供的一种微服务数据聚合系统,由于其每个模块本身的功能及彼此之间的逻辑连接,能实现前述实施例的每个步骤,因此能够达到与前述实施例相同的技术效果,原理分析可参见前述一种微服务数据聚合方法的步骤的相关描述,在此不再赘述。
关于一种微服务数据聚合系统具体限定可以参见上文中一种微服务数据聚合方法的限定,在此不再赘述;上述一种微服务数据聚合系统中的每个模块可全部或部分通过软件、硬件及其组合来实现;上述每个模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以是以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上每个模块对应的操作。
实施例五
参照图9,在本实施例中,一种计算机设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,处理器执行计算机程序时实现以下步骤:
根据客户端的数据处理请求和预设的数据关联关系,向多个对应的微服务发送对应的数据获取请求;
接收多个对应的微服务发送的多个对应的榜单数据;
将多个对应的榜单数据聚合成目标结构数据;
将目标结构数据发送至所述客户端。
在本实施例中,提供一种计算机可读存储介质,计算机可读存储介质存储有计算机程序,计算机程序执行时实现以下步骤:
根据客户端的数据处理请求和预设的数据关联关系,向多个对应的微服务发送对应的数据获取请求;
接收多个对应的微服务发送的多个对应的榜单数据;
将多个对应的榜单数据聚合成目标结构数据;
将目标结构数据发送至所述客户端。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述每个方法的实施例的流程。其中,本申请所提供的每个实施例中所使用的对存储器、存储、数据库或其他介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多个形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)、DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,仅以上述每个功能单元、模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能单元、模块完成,即将所述装置的内部结果划分成不同的功能单元或模块,以完成以上描述的全部或者部分功能。
以上所述实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域普通技术人员应当理解;其依然可以对前述每个实施例所记载的技术方案进行修改,或者对其中部分特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请每个实施例技术方案的精神和范围,均应包含在本申请的保护范围之内。
Claims (10)
1.一种微服务数据聚合方法,其特征在于,包括:
根据客户端的数据处理请求和预设的数据关联关系,向多个对应的微服务发送对应的数据获取请求;
接收所述多个对应的微服务发送的多个对应的榜单数据;
将所述多个对应的榜单数据聚合成目标结构数据;
将所述目标结构数据发送至所述客户端。
2.根据权利要求1所述的一种微服务数据聚合方法,其特征在于,所述数据关联关系包括字段映射关系;所述根据客户端的数据处理请求和预设的数据关联关系,向多个对应的微服务发送对应的数据获取请求,包括:
从客户端的数据处理请求中提取得到多个待查询数据字段;
基于所述字段映射关系及多个所述待查询数据字段,生成多个不同的数据获取请求,并向多个对应的微服务发送对应的数据获取请求。
3.根据权利要求2所述的一种微服务数据聚合方法,其特征在于,所述基于所述字段映射关系及多个所述待查询数据字段,生成多个不同的数据获取请求,并向多个对应的微服务发送对应的数据获取请求,包括:
利用Protobuf协议将多个所述待查询数据字段转换为多个待调取字符串;
根据多个所述待调取字符串和预设的配置文件,确定所述字段映射关系;
基于多个所述待调取字符串和所述字段映射关系,生成多个不同的数据获取请求,并向多个对应的微服务发送对应的数据获取请求。
4.根据权利要求1所述的一种微服务数据聚合方法,其特征在于,所述根据客户端的数据处理请求和预设的数据关联关系,向多个对应的微服务发送对应的数据获取请求,包括:
根据客户端的数据处理请求和预设的数据关联关系,通过预置的网关向多个对应的微服务发送对应的数据获取请求;
所述接收所述多个对应的微服务发送的多个对应的榜单数据,包括:
通过所述预置的网关接收所述多个对应的微服务发送的多个对应的榜单数据。
5.根据权利要求3所述的一种微服务数据聚合方法,其特征在于,所述目标结构数据为数据宽表,在所述将所述目标结构数据发送至所述客户端后,所述方法还包括:
识别接收到的所述客户端的二次数据处理请求中的新增字段,基于所述配置文件及所述新增字段向对应的微服务发送对应的数据新增请求;
接收所述对应的微服务发送的对应的新增榜单数据;
将所述对应的新增榜单数据聚合到所述目标结构数据中;
将所述目标结构数据发送至所述客户端。
6.根据权利要求5所述的一种微服务数据聚合方法,其特征在于,所述识别接收到的所述客户端的二次数据处理请求中的新增字段,基于所述配置文件及所述新增字段向对应的微服务发送对应的数据新增请求,包括:
利用Protobuf协议将多个所述新增字段转换为多个新增调取字符串;
根据多个所述新增调取字符串和对应修改后的配置文件,确定所述新增字段的映射关系;
基于多个所述新增调取字符串和所述新增字段的映射关系,生成多个不同的数据新增请求,并向对应的微服务发送对应的数据新增请求。
7.根据权利要求1所述的一种微服务数据聚合方法,其特征在于,在所述数据处理请求对应的待查询数据字段包含动态数据字段时,在所述将所述目标结构数据发送至所述客户端之后,所述方法还包括:
按预设数据获取频率,多次接收所述动态数据字段对应的微服务发送的动态榜单数据;
多次将所述动态榜单数据发送至所述客户端,以使所述客户端多次根据所述动态榜单数据对应更新所述目标结构数据。
8.一种微服务数据聚合系统,其特征在于,包括:
请求发送模块,用于根据客户端的数据处理请求和预设的数据关联关系,向多个对应的微服务发送对应的数据获取请求;
数据接收模块,用于接收所述多个对应的微服务发送的多个对应的榜单数据;
数据聚合模块,用于将所述多个对应的榜单数据聚合成目标结构数据;
数据发送模块,用于将所述目标结构数据发送至所述客户端。
9.一种计算机设备,其特征在于,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如权利要求1至7任一项所述的一种微服务数据聚合方法。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至7任一项所述的一种微服务数据聚合方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310576155.9A CN116578600A (zh) | 2023-05-19 | 2023-05-19 | 一种微服务数据聚合方法、系统、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310576155.9A CN116578600A (zh) | 2023-05-19 | 2023-05-19 | 一种微服务数据聚合方法、系统、设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116578600A true CN116578600A (zh) | 2023-08-11 |
Family
ID=87535501
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310576155.9A Pending CN116578600A (zh) | 2023-05-19 | 2023-05-19 | 一种微服务数据聚合方法、系统、设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116578600A (zh) |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106302829A (zh) * | 2016-10-26 | 2017-01-04 | 腾讯音乐娱乐(深圳)有限公司 | 一种信息访问方法、装置及服务器 |
CN110008045A (zh) * | 2019-04-12 | 2019-07-12 | 深圳乐信软件技术有限公司 | 微服务的聚合方法、装置、设备及存储介质 |
CN112528202A (zh) * | 2020-12-17 | 2021-03-19 | 湖南快乐阳光互动娱乐传媒有限公司 | 业务请求处理方法及装置 |
CN112581045A (zh) * | 2021-02-25 | 2021-03-30 | 上海富友支付服务股份有限公司 | 一种基于微服务的数据风控系统及其方法 |
CN113360519A (zh) * | 2020-03-06 | 2021-09-07 | 北京京东振世信息技术有限公司 | 数据处理方法、装置、设备和存储介质 |
CN114584829A (zh) * | 2022-02-08 | 2022-06-03 | 百果园技术(新加坡)有限公司 | 一种榜单活动页面管理方法及系统 |
CN115061721A (zh) * | 2022-07-12 | 2022-09-16 | 平安科技(深圳)有限公司 | 一种报表生成方法、装置、计算机设备及存储介质 |
CN115525717A (zh) * | 2022-09-19 | 2022-12-27 | 中国工商银行股份有限公司 | 一种数据同步处理方法及装置 |
CN115794929A (zh) * | 2023-01-13 | 2023-03-14 | 中企云链(北京)金融信息服务有限公司 | 数据集市的数据管理系统和数据管理方法 |
-
2023
- 2023-05-19 CN CN202310576155.9A patent/CN116578600A/zh active Pending
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106302829A (zh) * | 2016-10-26 | 2017-01-04 | 腾讯音乐娱乐(深圳)有限公司 | 一种信息访问方法、装置及服务器 |
CN110008045A (zh) * | 2019-04-12 | 2019-07-12 | 深圳乐信软件技术有限公司 | 微服务的聚合方法、装置、设备及存储介质 |
CN113360519A (zh) * | 2020-03-06 | 2021-09-07 | 北京京东振世信息技术有限公司 | 数据处理方法、装置、设备和存储介质 |
CN112528202A (zh) * | 2020-12-17 | 2021-03-19 | 湖南快乐阳光互动娱乐传媒有限公司 | 业务请求处理方法及装置 |
CN112581045A (zh) * | 2021-02-25 | 2021-03-30 | 上海富友支付服务股份有限公司 | 一种基于微服务的数据风控系统及其方法 |
CN114584829A (zh) * | 2022-02-08 | 2022-06-03 | 百果园技术(新加坡)有限公司 | 一种榜单活动页面管理方法及系统 |
CN115061721A (zh) * | 2022-07-12 | 2022-09-16 | 平安科技(深圳)有限公司 | 一种报表生成方法、装置、计算机设备及存储介质 |
CN115525717A (zh) * | 2022-09-19 | 2022-12-27 | 中国工商银行股份有限公司 | 一种数据同步处理方法及装置 |
CN115794929A (zh) * | 2023-01-13 | 2023-03-14 | 中企云链(北京)金融信息服务有限公司 | 数据集市的数据管理系统和数据管理方法 |
Non-Patent Citations (1)
Title |
---|
陆泽西: "Unity3D 高级编程 主程手记", 北京:机械工业出版社, pages: 232 - 236 * |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108021710B (zh) | 一种动态接口转换方法、装置、终端设备及存储介质 | |
US7320023B2 (en) | Mechanism for caching dynamically generated content | |
CN111277639B (zh) | 一种保持数据一致性的方法和装置 | |
WO2017156916A1 (zh) | 数据访问方法和装置 | |
CN109377225A (zh) | 交易分配方法、共识方法、设备和存储介质 | |
US10936360B2 (en) | Methods and devices of batch process of content management | |
CN111092877A (zh) | 一种数据处理方法、装置、电子设备及存储介质 | |
CN111625585B (zh) | 硬件加速数据库的访问方法、装置、主机及存储介质 | |
CN111722947A (zh) | 服务调用方法及系统 | |
EP2842034B1 (en) | Providing client and service compatibility through cloud-hosted adapters | |
WO2018035799A1 (zh) | 数据查询方法、应用和数据库服务器、中间件及系统 | |
CN110826004A (zh) | 一种前端请求数据的处理方法及相关装置 | |
CN112306645A (zh) | 以太坊虚拟机的事务处理方法、装置、设备、程序和介质 | |
CN112866421B (zh) | 基于分布式缓存以及nsq的智能合约运行方法及装置 | |
CN113806104A (zh) | 接口访问请求处理方法、api网关、服务器及系统 | |
CN111526052A (zh) | 网元指令管理方法、装置、网络设备及存储介质 | |
CN110888672B (zh) | 一种基于元数据架构的表达式引擎实现方法及系统 | |
CN112464632A (zh) | 一种excel报表下的表格样式动态存储及转化方法 | |
KR20210122211A (ko) | 이더리움 가상머신의 트랜잭션 처리 방법, 장치, 설비, 프로그램 및 매체 | |
CN110109983B (zh) | 一种操作Redis数据库的方法和装置 | |
CN106161520A (zh) | 大数据应用平台及基于其的交互方法 | |
CN110764769A (zh) | 处理用户请求的方法和装置 | |
CN116578600A (zh) | 一种微服务数据聚合方法、系统、设备及存储介质 | |
WO2023208132A1 (zh) | Api转换系统及其访问请求处理方法、电子设备及介质 | |
CN113536748A (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: 20230811 |