CN111198806B - 基于服务开放平台的服务调用数据统计分析方法及*** - Google Patents
基于服务开放平台的服务调用数据统计分析方法及*** Download PDFInfo
- Publication number
- CN111198806B CN111198806B CN201911300923.8A CN201911300923A CN111198806B CN 111198806 B CN111198806 B CN 111198806B CN 201911300923 A CN201911300923 A CN 201911300923A CN 111198806 B CN111198806 B CN 111198806B
- Authority
- CN
- China
- Prior art keywords
- data
- service
- access
- service call
- query
- 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
- 238000007619 statistical method Methods 0.000 title claims abstract description 35
- 238000000034 method Methods 0.000 title claims abstract description 31
- 238000004458 analytical method Methods 0.000 claims abstract description 7
- 230000004044 response Effects 0.000 claims description 31
- 238000012545 processing Methods 0.000 claims description 25
- 238000005259 measurement Methods 0.000 claims description 21
- 238000013461 design Methods 0.000 claims description 10
- 230000005540 biological transmission Effects 0.000 claims description 7
- 238000001914 filtration Methods 0.000 claims description 7
- 238000004364 calculation method Methods 0.000 claims description 6
- 238000004806 packaging method and process Methods 0.000 claims description 6
- 230000001360 synchronised effect Effects 0.000 claims description 5
- 238000013500 data storage Methods 0.000 abstract description 3
- 238000013480 data collection Methods 0.000 description 17
- 239000008186 active pharmaceutical agent Substances 0.000 description 9
- 238000005516 engineering process Methods 0.000 description 4
- 230000008569 process Effects 0.000 description 4
- 238000011161 development Methods 0.000 description 3
- 238000013473 artificial intelligence Methods 0.000 description 2
- 238000004590 computer program Methods 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000007405 data analysis Methods 0.000 description 1
- 238000013486 operation strategy Methods 0.000 description 1
- 230000008447 perception Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/34—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
- G06F11/3452—Performance evaluation by statistical analysis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/27—Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
-
- 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/546—Message passing systems or structures, e.g. queues
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2209/00—Indexing scheme relating to G06F9/00
- G06F2209/54—Indexing scheme relating to G06F9/54
- G06F2209/548—Queue
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Databases & Information Systems (AREA)
- Software Systems (AREA)
- Data Mining & Analysis (AREA)
- Life Sciences & Earth Sciences (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Evolutionary Biology (AREA)
- Probability & Statistics with Applications (AREA)
- Computer Hardware Design (AREA)
- Quality & Reliability (AREA)
- Computing Systems (AREA)
- Computational Linguistics (AREA)
- Computer And Data Communications (AREA)
Abstract
本发明公开了一种基于服务开放平台的服务调用数据统计分析方法及***,所述方法包括:采集服务调用情况数据;采集服务调用情况数据,将以UDP采集方式采集的数据存储在分布式时序数据库中,将以HTTP采集方式采集的数据经分析后数据存入分布式事务数据库中;依据用户输入的关键字查询,若检测到分布式事务数据库的数据满足查询条件,输出分布式事务数据库的查询结果,否则输出分布式时序数据库的查询结果。本发明可以满足多客户端高并发访问平台服务的情况下,服务调用数据存储、查询及统计分析的实时性和准确性,支撑开放平台运营者和服务开发者根据服务调用数据快速决策。
Description
技术领域
本发明涉及通信技术领域,更具体地,涉及基于服务开放平台的服务调用数据统计分析方法及***。
背景技术
随着互联网、大数据和人工智能技术的发展,各公司和机构积累价值较高的数据资源、特定业务专题分析以及通用的人工智能感知能力,并为了数据和技术的价值最大化,将这些能力以服务的形式对内、对外开放,使得开放平台已经成为流行的服务模式。随着自研和外部开发者所开发的应用API接口接入到开放平台中,极大的丰富了平台的服务,供广大的互联网用户和应用开发者选择和使用,也为应用API开发者带来了经济收益。
对于服务开放平台的运营者、将研发成果发布到开放平台的服务开发者而言,需要尽可能快地了解整个平台服务的服务调用数据情况,掌握服务收益,进而制定平台运营策略。因此,服务调用数据采集存储以及统计分析的高效性,是服务开放平台的一个关键技术实现。
现阶段,基于大数据技术对服务调用日志进行分析可以实现平台开发各服务调用情况的统计分析,在平台开放服务较多和服务调用者较多的并发量较大的场景下,对服务调用数据的实时性提出了更高的挑战,而现有实现往往牺牲时效性,来保证服务调用数据的准确性,无法提供高效、快速的服务调用情况统计分析。
发明内容
为了解决背景技术存在的服务调用情况分析时效性差的问题,本发明提供了基于服务开放平台的服务调用数据统计分析方法及***,所述方法在服务调用数据采集端对服务调用情况进行日志记录,使用大数据实时计算框架对采集日志数据进行消费和访问记录叠加,保障服务调用统计情况的实时性和准确性;所述方法包括:
采集服务调用情况数据,所述采集方式包括UDP采集方式以及HTTP采集方式;
将以UDP采集方式采集的数据存储在分布式时序数据库中;
将以HTTP采集方式采集的数据传输至消息队列中间件,调用日志数据处理服务完成消息队列中间件中数据的分析,将分析后数据存入分布式事务数据库中;
依据用户输入的关键字查询,同时检测分布式事务数据库和分布式时序数据库,若所述分布式事务数据库统计分析数值大于或者等于分布式时序数据库统计分析数值,输出分布式事务数据库的查询结果,否则输出分布式时序数据库的查询结果。
进一步的,所述UDP采集方式包括:
读取服务调用采集数据类型;
对所读取到的所述服务调用采集数据类型设定服务调用采集数据配置,对服务调用日志进行过滤得到关注的服务调用情况;
解析过滤后服务调用日志,提取数据组装成约定格式的字符串,所述字符串包括度量的名称以及数值,设置所述数值的统计数据值类型。
进一步的,所述服务调用采集数据类型包括访问来源维度、服务接口API、统计度量、服务请求数量、特定用户服务请求数量、服务访问不同响应状态计数、服务访问不同响应状态不同用户计数以及服务访问唯一用户数;
所述访问来源维度包括用户和应用维度。
进一步的,所述统计数据值类型包括计数类型、计时类型以及集合类型,所述集合类型标识服务调用次数、服务调用耗时以及服务调用用户集合。
进一步的,所述HTTP采集方式包括:
采集网关节点的服务调用日志;
解析服务调用日志获得关键描述信息,将所述关键描述信息封装为json格式,得到封装后字符串。
进一步的,所述日志数据处理服务包括:
将接收的数据传输至消息队列中间件,在消息队列中形成待消费数据队列;
使用大数据流式计算处理引擎对所述待消费数据队列中数据按预设度量结果读取,将读取结果与时间窗口的实时服务调用日志细粒度数据叠加后写入分布式事务数据库;
将所述待消费数据队列中的数据写入日志明细查询存储引擎中,提供服务接口访问明细查询服务。
进一步的,所述分布式事务数据库中包括根据设计指标的最小粒度度量记录以及根据服务调用目标设计的统计指标。
进一步的,所述分布式事务数据库中数据更新后,将所述更新后数据同步至分布式事务数据库从库中,由分布式事务数据库从库提供数据查询统计服务。
一种基于服务开放平台的服务调用数据统计分析***,其特征在于:
所述***包括UDP数据采集客户端、HTTP数据采集客户端、UDP数据采集服务端、HTTP数据采集服务端、分布式时序数据库、消息队列中间件、日志数据处理服务单元、分布式事务数据库以及查询统计服务单元;
所述UDP数据采集客户端用于以UDP采集方式采集服务调用情况数据;
所述HTTP数据采集客户端用于以HTTP采集方式采集服务调用情况数据;
所述UDP数据采集服务端用于将UDP数据采集客户端采集的数据存储在分布式时序数据库中;
HTTP数据采集服务端用于将HTTP数据采集客户端采集的数据传输至消息队列中间件;
所述分布式时序数据库用于提供按服务调用统计维度进行服务调用情况的查询和统计服务。
所述消息队列中间件用于将接收的数据形成待消费数据队列;
日志数据处理服务单元用于分析消息队列中间件中的数据,将分析后数据存入分布式事务数据库中;
分布式事务数据库用于提供HTTP数据采集客户端采集数据的查询统计服务;
查询统计服务单元用于依据用户输入的关键字查询,同时检测分布式事务数据库和分布式时序数据库,若所述分布式事务数据库统计分析数值大于或者等于分布式时序数据库统计分析数值,输出分布式事务数据库的查询结果,否则输出分布式时序数据库的查询结果。
进一步的,所述UDP数据采集客户端用于读取服务调用采集数据类型;对所读取到的所述服务调用采集数据类型设定服务调用采集数据配置,对服务调用日志进行过滤得到关注的服务调用情况;
所述UDP数据采集客户端用于解析过滤后服务调用日志,提取数据组装成约定格式的字符串,所述字符串包括度量的名称以及数值,设置所述数值的统计数据值类型。
进一步的,所述服务调用采集数据类型包括访问来源维度、服务接口API、统计度量、服务请求数量、特定用户服务请求数量、服务访问不同响应状态计数、服务访问不同响应状态不同用户计数以及服务访问唯一用户数;
所述访问来源维度包括用户和应用维度。
进一步的,所述统计数据值类型包括计数类型、计时类型以及集合类型,所述集合类型标识服务调用次数、服务调用耗时以及服务调用用户集合。
进一步的,所述HTTP数据采集客户端采集网关节点的服务调用日志;解析服务调用日志获得关键描述信息,将所述关键描述信息封装为json格式,得到封装后字符串。
进一步的,所述关键信息包括所访问API接口的基本信息、请求接口基本信息以及响应基本信息。
进一步的,日志数据处理服务单元用于使用大数据流式计算处理引擎对所述待消费数据队列中数据按预设度量结果读取,将读取结果与时间窗口的实时服务调用日志细粒度数据叠加后写入分布式事务数据库;
所述日志数据处理服务单元还包括日志明细查询存储引擎模块,所述日志明细查询存储引擎模块用于接收所述待消费数据队列中的数据,提供服务接口访问明细查询服务。
进一步的,所述分布式事务数据库中包括两种类型的数据,一种为根据设计指标的最小粒度度量记录,另一种为根据服务调用目标设计的统计指标。
进一步的,所述***还包括分布式事务数据库从库,当所述分布式事务数据库中数据更新后,将所述更新后数据同步至分布式事务数据库从库中,由分布式事务数据库从库提供数据查询统计服务。
本发明的有益效果为:本发明的技术方案,给出了基于服务开放平台的服务调用数据统计分析方法及***,所述方法通过采集服务调用情况数据,以UDP协议传输数据存入分布式时序数据库,以HTTP协议传输数据经分析处理后存入分布式事务数据库,根据用户关键字查询数据库获取服务调用数据,满足多客户端高并发访问服务平台的情况下,服务调用数据存储、查询及统计分析的实时性和准确性,支持开放平台运营者和服务开发者根据服务调用数据完成快速决策。
附图说明
通过参考下面的附图,可以更为完整地理解本发明的示例性实施方式:
图1为本发明具体实施方式的一种基于服务开放平台的服务调用数据统计分析方法的流程图;
图2为本发明具体实施方式的一种基于服务开放平台的服务调用数据统计分析***的结构图。
具体实施方式
现在参考附图介绍本发明的示例性实施方式,然而,本发明可以用许多不同的形式来实施,并且不局限于此处描述的实施例,提供这些实施例是为了详尽地且完全地公开本发明,并且向所属技术领域的技术人员充分传达本发明的范围。对于表示在附图中的示例性实施方式中的术语并不是对本发明的限定。在附图中,相同的单元/元件使用相同的附图标记。
除非另有说明,此处使用的术语(包括科技术语)对所属技术领域的技术人员具有通常的理解含义。另外,可以理解的是,以通常使用的词典限定的术语,应当被理解为与其相关领域的语境具有一致的含义,而不应该被理解为理想化的或过于正式的意义。
图1为本发明具体实施方式的一种基于服务开放平台的服务调用数据统计分析方法的流程图;如图1所示,所述方法包括:
步骤110,采集服务调用情况数据,所述采集方式包括UDP采集方式以及HTTP采集方式;
其中,UDP采集方式包括:
首先,读取服务调用采集数据类型,所述服务调用采集数据类型包括访问来源维度、服务接口API、统计度量、服务请求数量、特定用户服务请求数量、服务访问不同响应状态计数、服务访问不同响应状态不同用户计数以及服务访问唯一用户数,所述访问来源维度包括用户和应用维度;
然后,对所读取到的所述服务调用采集数据类型设定服务调用采集数据配置,对服务调用日志进行过滤得到关注的服务调用情况;
接着,解析过滤后服务调用日志,日志数据格式如下:
表1日志数据格式
提取日志数据组装成约定格式的字符串,所述字符串包括度量的名称以及数值,设置所述数值的统计数据值类型;
所述统计数据值类型包括计数类型、计时类型以及集合类型,所述集合类型标识服务调用次数、服务调用耗时以及服务调用用户集合;
例如,可以将“服务名称+[用户名名称]+度量名称+[度量状态细分类]”作为名称,度量数据为数值,标注所述数值的统计数据值类型;
最后,将所述字符串发送至UDP数据采集服务端,完成UDP采集过程。
HTTP采集方式包括:
首先,采集网关节点的服务调用日志;
然后,解析服务调用日志获得关键描述信息,将所述关键描述信息封装为json格式,得到封装后字符串,所述关键信息包括所访问API接口的基本信息、请求接口基本信息以及响应基本信息;
最后,将所述封装后字符串发送至HTTP数据采集服务端,完成HTTP采集过程。
步骤120,将以UDP采集方式采集的数据存储在分布式时序数据库中;
所述时序数据库选择influxDB,按“服务名+【访问用户】+统计类型”建立数据库表,写入该服务访问时间、访问来源主机、度量类型以及数值;
通过influxDB时序数据库的接口,按服务调用统计维度进行服务调用情况的查询和统计;
UDP协议可以实现数据的低代价传输,存储在分布式时序数据库的通过UDP协议采集的数据,查询响应快速且查询能力可通过增加节点扩展,用户可以通过UDP采集的服务调用数据快速获得服务调用情况。
步骤130,将以HTTP采集方式采集的数据传输至消息队列中间件,调用日志数据处理服务完成消息队列中间件中数据的分析,将分析后数据存入分布式事务数据库中;
消息队列中间件将HTTP数据采集服务端发送的json格式数据形成待消费数据队列,使用大数据流式计算处理引擎对所述待消费数据队列中数据按预设度量结果读取,将读取结果与时间窗口的实时服务调用日志细粒度数据叠加后写入分布式事务数据库;
同时,将待消费数据队列中数据写入日志明细查询存储引擎中,提供服务接口访问明细查询服务,所述日志明细查询存储引擎为ElaticSearch;
所述分布式事务数据库中包括两种类型的数据,一种为根据设计指标的最小粒度度量记录,另一种为根据服务调用目标设计的统计指标;
其中,最小粒度度量记录格式如下:
表2最小粒度度量记录格式
用户 | 访问服务url路径 | 客户端IP地址 | 访问时间 |
响应时间 | 请求响应状态 | 请求数据大小 | 响应数据大小 |
此外,当所述分布式事务数据库中数据更新后,将所述更新后数据同步至分布式事务数据库从库中,并由分布式事务数据库从库提供数据查询统计服务。
步骤140,依据用户输入的关键字查询,同时检测分布式事务数据库和分布式时序数据库,若所述分布式事务数据库统计分析数值大于或者等于分布式时序数据库统计分析数值,输出分布式事务数据库的查询结果,否则输出分布式时序数据库的查询结果;
UDP协议传输速率快,用户可以通过UDP方式采集的服务调用数据快速获得服务调用情况,但是UDP协议传输数据的可靠性无法保证,因此可以通过HTTP采集方式获得准确的服务调用情况数据;
根据用户查询关键字,同时查询分布式事务数据库和分布式时序数据库,若分布式事务数据库统计分析数值大于或者等于分布式时序数据库统计分析数值,输出分布式事务数据库的查询结果,若分布式事务数据库统计分析数值小于分布式时序数据库统计分析数值,输出分布式时序数据库的查询结果。
此外,用户还可以通过日志明细查询存储引擎查询服务单次调用的明细数据,了解服务调用细节。
图2为本发明具体实施方式的一种基于服务开放平台的服务调用数据统计分析***的结构图;如图2所示,所述***包括UDP数据采集客户端210、HTTP数据采集客户端220、UDP数据采集服务端230、HTTP数据采集服务端240、分布式时序数据库250、消息队列中间件260、日志数据处理服务单元270、分布式事务数据库280以及查询统计服务单元290;
所述UDP数据采集客户端210用于以UDP采集方式采集服务调用情况数据;
所述UDP数据采集客户端210用于读取服务调用采集数据类型;对所读取到的所述服务调用采集数据类型设定服务调用采集数据配置,对服务调用日志进行过滤得到关注的服务调用情况;
其中,所述服务调用采集数据类型包括访问来源维度、服务接口API、统计度量、服务请求数量、特定用户服务请求数量、服务访问不同响应状态计数、服务访问不同响应状态不同用户计数以及服务访问唯一用户数,所述访问来源维度包括用户和应用维度;
所述UDP数据采集客户端210用于解析过滤后服务调用日志,提取数据组装成约定格式的字符串,所述字符串包括度量的名称以及数值,设置所述数值的统计数据值类型;将所述字符串发送至数据采集服务端230;
其中,所述统计数据值类型包括计数类型、计时类型以及集合类型,所述集合类型标识服务调用次数、服务调用耗时以及服务调用用户集合。
所述HTTP数据采集客户端220用于以HTTP采集方式采集服务调用情况数据;
所述HTTP数据采集客户端220采集网关节点的服务调用日志;解析服务调用日志获得关键描述信息,将所述关键描述信息封装为json格式,得到封装后字符串,其中,所述关键信息包括所访问API接口的基本信息、请求接口基本信息以及响应基本信息;将所述字符串发送至数据采集服务端230;
UDP数据采集客户端210和HTTP数据采集客户端220部署在各分布式网关的节点上,保证采集服务的可扩展性。
所述UDP数据采集服务端230用于将UDP数据采集客户端210采集的数据存储在分布式时序数据库250中;
所述分布式时序数据库250用于提供按服务调用统计维度进行服务调用情况的查询和统计服务。
所述HTTP数据采集服务端240将HTTP数据采集客户端220采集的数据传输至消息队列中间件260,所述消息队列中间件260将接收的数据形成待消费数据队列,发送给日志数据处理服务单元270完成数据分析;
日志数据处理服务单元270用于分析消息队列中间件260中的数据,将分析后数据存入分布式事务数据库280中;
日志数据处理服务单元270用于使用大数据流式计算处理引擎对所述待消费数据队列中数据按预设度量结果读取,将读取结果与时间窗口的实时服务调用日志细粒度数据叠加后写入分布式事务数据库280;
所述日志数据处理服务单元270还包括日志明细查询存储引擎模块,所述日志明细查询存储引擎模块用于接收所述待消费数据队列中的数据,提供服务接口访问明细查询服务。
分布式事务数据库280用于提供HTTP数据采集客户端220采集数据的查询统计服务;
所述分布式事务数据库280中包括两种类型的数据,一种为根据设计指标的最小粒度度量记录,另一种为根据服务调用目标设计的统计指标;
所述***还包括分布式事务数据库从库,当所述分布式事务数据库中数据更新后,将所述更新后数据同步至分布式事务数据库从库中,由分布式事务数据库从库提供数据查询统计服务。
查询统计服务单元290用于依据用户输入的关键字查询,同时检测分布式事务数据库280和分布式时序数据库250,若所述分布式事务数据库280统计分析数值大于或者等于分布式时序数据库250统计分析数值,输出分布式事务数据库280的查询结果,否则输出分布式时序数据库250的查询结果。
此外,用户还可以通过查询统计服务单元290查询日志明细查询存储引擎模块存储的服务单次调用的明细数据,了解服务调用细节。
在此处所提供的说明书中,说明了大量具体细节。然而,能够理解,本公开的实施例可以在没有这些具体细节的情况下实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。
本领域那些技术人员可以理解,可以对实施例中的设备中的模块进行自适应性地改变并且把它们设置在与该实施例不同的一个或多个设备中。可以把实施例中的模块或单元或组件组合成一个模块或单元或组件,以及此外可以把它们分成多个子模块或子单元或子组件。除了这样的特征和/或过程或者单元中的至少一些是相互排斥之外,可以采用任何组合对本说明书(包括伴随的权利要求、摘要和附图)中公开的所有特征以及如此公开的任何方法或者设备的所有过程或单元进行组合。除非另外明确陈述,本说明书(包括伴随的权利要求、摘要和附图)中公开的每个特征可以由提供相同、等同或相似目的的替代特征来代替。本说明书中涉及到的步骤编号仅用于区别各步骤,而并不用于限制各步骤之间的时间或逻辑的关系,除非文中有明确的限定,否则各个步骤之间的关系包括各种可能的情况。
此外,本领域的技术人员能够理解,尽管在此所述的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本公开的范围之内并且形成不同的实施例。例如,在权利要求书中所要求保护的实施例的任意之一都可以以任意的组合方式来使用。
本公开的各个部件实施例可以以硬件实现,或者以在一个或者多个处理器上运行的软件模块实现,或者以它们的组合实现。本公开还可以实现为用于执行这里所描述的方法的一部分或者全部的设备或者***程序(例如,计算机程序和计算机程序产品)。这样的实现本公开的程序可以存储在计算机可读介质上,或者可以具有一个或者多个信号的形式。这样的信号可以从因特网网站上下载得到,或者在载体信号上提供,或者以任何其他形式提供。
应该注意的是上述实施例对本公开进行说明而不是对本公开进行限制,并且本领域技术人员在不脱离所附权利要求的范围的情况下可设计出替换实施例。单词“包含”不排除存在未列在权利要求中的元件或步骤。位于元件之前的单词“一”或“一个”不排除存在多个这样的元件。本公开可以借助于包括有若干不同元件的硬件以及借助于适当编程的计算机来实现。在列举了若干***的单元权利要求中,这些***中的若干个可以是通过同一个硬件项来具体体现。
以上所述仅是本公开的具体实施方式,应当指出的是,对于本领域的普通技术人员来说,在不脱离本公开精神的前提下,可以作出若干改进、修改、和变形,这些改进、修改、和变形都应视为落在本申请的保护范围内。
Claims (18)
1.一种基于服务开放平台的服务调用数据统计分析方法,其特征在于:
用户并发地调用所述服务开放平台提供的多种服务;
采集服务调用情况数据,采集方式包括UDP采集方式以及HTTP采集方式;其中,UDP协议可以实现数据的低代价传输,存储在分布式时序数据库的通过UDP协议采集的数据,查询响应快速且查询能力可通过增加节点扩展,用户可以通过UDP采集的服务调用数据快速获得服务调用情况;但是UDP协议传输数据的可靠性无法保证,因此可以通过HTTP采集方式获得准确的服务调用情况数据;
将以UDP采集方式采集的数据存储在分布式时序数据库中;其中,以UDP采集方式采集的服务调用情况数据包括:访问源IP地址、访问用户名、访问时间、具体访问服务接口地址、访问响应状态码、请求字节数、访问终端类型;所述时序数据库选择influxDB,按“服务名+【访问用户】+统计类型”建立数据库表,写入该服务访问时间、访问来源主机、度量类型以及数值;其中,通过influxDB时序数据库的接口,按服务调用统计维度进行服务调用情况的查询和统计;
将以HTTP采集方式采集的数据传输至消息队列中间件,调用日志数据处理服务完成消息队列中间件中数据的分析,将分析后数据存入分布式事务数据库中;其中,以HTTP采集方式采集的服务调用情况数据,包括:用户、访问服务url路径、客户端IP地址、访问时间、响应时间、请求响应状态、请求数据大小、响应数据大小;
其中,所述日志数据处理服务包括:
将接收的json格式数据传输至消息队列中间件,在消息队列中形成待消费数据队列;
使用大数据流式计算处理引擎对所述待消费数据队列中数据按预设度量结果读取,将读取结果与时间窗口的实时服务调用日志细粒度数据叠加后写入分布式事务数据库;依据用户输入的关键字查询,同时检测分布式事务数据库和分布式时序数据库,若所述分布式事务数据库统计分析数值大于或者等于分布式时序数据库统计分析数值,输出分布式事务数据库的查询结果,否则输出分布式时序数据库的查询结果。
2.根据权利要求1所述的方法,其特征在于,所述UDP采集方式包括:
读取服务调用采集数据类型;
对所读取到的所述服务调用采集数据类型设定服务调用采集数据配置,对服务调用日志进行过滤得到关注的服务调用情况;
解析过滤后服务调用日志,提取数据组装成约定格式的字符串,所述字符串包括度量的名称以及数值,设置所述数值的统计数据值类型。
3.根据权利要求2所述的方法,其特征在于:
所述服务调用采集数据类型包括访问来源维度、服务接口API、统计度量、服务请求数量、特定用户服务请求数量、服务访问不同响应状态计数、服务访问不同响应状态不同用户计数以及服务访问唯一用户数;
所述访问来源维度包括用户和应用维度。
4.根据权利要求3所述的方法,其特征在于:
所述统计数据值类型包括计数类型、计时类型以及集合类型,所述集合类型标识服务调用次数、服务调用耗时以及服务调用用户集合。
5.根据权利要求1所述的方法,其特征在于,所述HTTP采集方式包括:
采集网关节点的服务调用日志;
解析服务调用日志获得关键描述信息,将所述关键描述信息封装为json格式,得到封装后字符串。
6.根据权利要求5所述的方法,其特征在于:
所述关键描述信息包括所访问API接口的基本信息、请求接口基本信息以及响应基本信息。
7.根据权利要求1所述的方法,其特征在于,所述日志数据处理服务包括:
将所述待消费数据队列中的数据写入日志明细查询存储引擎中,提供服务接口访问明细查询服务,所述日志明细查询存储引擎为ElaticSearch。
8.根据权利要求7所述的方法,其特征在于:
所述分布式事务数据库中包括根据设计指标的最小粒度度量记录以及根据服务调用目标设计的统计指标。
9.根据权利要求7所述的方法,其特征在于:
所述分布式事务数据库中数据更新后,将所述更新后数据同步至分布式事务数据库从库中,由分布式事务数据库从库提供数据查询统计服务。
10.一种基于服务开放平台的服务调用数据统计分析***,其特征在于:
用户并发地调用所述服务开放平台提供的多种服务;
所述***包括UDP数据采集客户端、HTTP数据采集客户端、UDP数据采集服务端、HTTP数据采集服务端、分布式时序数据库、消息队列中间件、日志数据处理服务单元、分布式事务数据库以及查询统计服务单元;
所述UDP数据采集客户端用于以UDP采集方式采集服务调用情况数据;
所述HTTP数据采集客户端用于以HTTP采集方式采集服务调用情况数据;其中,UDP协议可以实现数据的低代价传输,存储在分布式时序数据库的通过UDP协议采集的数据,查询响应快速且查询能力可通过增加节点扩展,用户可以通过UDP采集的服务调用数据快速获得服务调用情况;但是UDP协议传输数据的可靠性无法保证,因此可以通过HTTP采集方式获得准确的服务调用情况数据;
所述UDP数据采集服务端用于将UDP数据采集客户端采集的数据存储在分布式时序数据库中;其中,以UDP采集方式采集的服务调用情况数据包括:访问源IP地址、访问用户名、访问时间、具体访问服务接口地址、访问响应状态码、请求字节数、访问终端类型;其中,所述时序数据库选择influxDB,按“服务名+【访问用户】+统计类型”建立数据库表,写入该服务访问时间、访问来源主机、度量类型以及数值;
HTTP数据采集服务端用于将HTTP数据采集客户端采集的数据传输至消息队列中间件;其中,以HTTP采集方式采集的服务调用情况数据,包括:用户、访问服务url路径、客户端IP地址、访问时间、响应时间、请求响应状态、请求数据大小、响应数据大小;
所述分布式时序数据库用于通过influxDB时序数据库的接口提供按服务调用统计维度进行服务调用情况的查询和统计服务;
所述消息队列中间件用于将接收的json格式数据形成待消费数据队列;
日志数据处理服务单元用于分析消息队列中间件中的数据,将分析后数据存入分布式事务数据库中;
日志数据处理服务单元用于使用大数据流式计算处理引擎对所述待消费数据队列中数据按预设度量结果读取,将读取结果与时间窗口的实时服务调用日志细粒度数据叠加后写入分布式事务数据库;
分布式事务数据库用于提供HTTP数据采集客户端采集数据的查询统计服务;
查询统计服务单元用于依据用户输入的关键字查询,同时检测分布式事务数据库和分布式时序数据库,若所述分布式事务数据库统计分析数值大于或者等于分布式时序数据库统计分析数值,输出分布式事务数据库的查询结果,否则输出分布式时序数据库的查询结果。
11.根据权利要求10所述的***,其特征在于:
所述UDP数据采集客户端用于读取服务调用采集数据类型;对所读取到的所述服务调用采集数据类型设定服务调用采集数据配置,对服务调用日志进行过滤得到关注的服务调用情况;
所述UDP数据采集客户端用于解析过滤后服务调用日志,提取数据组装成约定格式的字符串,所述字符串包括度量的名称以及数值,设置所述数值的统计数据值类型。
12.根据权利要求11所述的***,其特征在于:
所述服务调用采集数据类型包括访问来源维度、服务接口API、统计度量、服务请求数量、特定用户服务请求数量、服务访问不同响应状态计数、服务访问不同响应状态不同用户计数以及服务访问唯一用户数;
所述访问来源维度包括用户和应用维度。
13.根据权利要求12所述的***,其特征在于:
所述统计数据值类型包括计数类型、计时类型以及集合类型,所述集合类型标识服务调用次数、服务调用耗时以及服务调用用户集合。
14.根据权利要求10所述的***,其特征在于:
所述HTTP数据采集客户端采集网关节点的服务调用日志;解析服务调用日志获得关键描述信息,将所述关键描述信息封装为json格式,得到封装后字符串。
15.根据权利要求14所述的***,其特征在于:
所述关键描述信息包括所访问API接口的基本信息、请求接口基本信息以及响应基本信息。
16.根据权利要求10所述的***,其特征在于:
所述日志数据处理服务单元还包括日志明细查询存储引擎模块,所述日志明细查询存储引擎模块用于接收所述待消费数据队列中的数据,提供服务接口访问明细查询服务,所述日志明细查询存储引擎为ElaticSearch。
17.根据权利要求16所述的***,其特征在于:
所述分布式事务数据库中包括两种类型的数据,一种为根据设计指标的最小粒度度量记录,另一种为根据服务调用目标设计的统计指标。
18.根据权利要求16所述的***,其特征在于:
所述***还包括分布式事务数据库从库,当所述分布式事务数据库中数据更新后,将所述更新后数据同步至分布式事务数据库从库中,由分布式事务数据库从库提供数据查询统计服务。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911300923.8A CN111198806B (zh) | 2019-12-17 | 2019-12-17 | 基于服务开放平台的服务调用数据统计分析方法及*** |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911300923.8A CN111198806B (zh) | 2019-12-17 | 2019-12-17 | 基于服务开放平台的服务调用数据统计分析方法及*** |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111198806A CN111198806A (zh) | 2020-05-26 |
CN111198806B true CN111198806B (zh) | 2024-04-05 |
Family
ID=70744378
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911300923.8A Active CN111198806B (zh) | 2019-12-17 | 2019-12-17 | 基于服务开放平台的服务调用数据统计分析方法及*** |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111198806B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112217882B (zh) * | 2020-09-25 | 2024-03-26 | 航天信息股份有限公司 | 一种用于服务开放的分布式网关*** |
CN112527601A (zh) * | 2020-12-17 | 2021-03-19 | 航天信息股份有限公司 | 一种监控预警方法及装置 |
CN114936222A (zh) * | 2022-03-30 | 2022-08-23 | 北京元年科技股份有限公司 | 基于udp广播协议的数据库集群的数据查询方法及装置 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101023625A (zh) * | 2004-01-16 | 2007-08-22 | 诺基亚公司 | 使用udp源节流进行网络拥塞控制的***和方法 |
CN102460393A (zh) * | 2009-05-01 | 2012-05-16 | 思杰***有限公司 | 用于在虚拟存储资源之间建立云桥的***和方法 |
CN102469028A (zh) * | 2010-10-28 | 2012-05-23 | 三星Sds株式会社 | 用于确保以太网环境中udp数据传输的公平性的设备和方法 |
CN105871911A (zh) * | 2016-06-02 | 2016-08-17 | 浪潮通用软件有限公司 | 一种服务调用引擎、方法及*** |
CN106411907A (zh) * | 2016-10-13 | 2017-02-15 | 广西咪付网络技术有限公司 | 一种数据传输方法和*** |
CN106874424A (zh) * | 2017-01-25 | 2017-06-20 | 杭州淘淘搜科技有限公司 | 一种基于MongoDB和Redis的网页数据采集处理方法及*** |
CN109753531A (zh) * | 2018-12-26 | 2019-05-14 | 深圳市麦谷科技有限公司 | 一种大数据统计方法、***、计算机设备及存储介质 |
CN109800212A (zh) * | 2017-11-16 | 2019-05-24 | 航天信息股份有限公司 | 支持事务形式的中间件访问hdfs***的方法及中间件 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7917647B2 (en) * | 2000-06-16 | 2011-03-29 | Mcafee, Inc. | Method and apparatus for rate limiting |
US9495226B2 (en) * | 2011-12-21 | 2016-11-15 | Cbs Interactive Inc. | Integration of client side applications into a fantasy open platform environment |
-
2019
- 2019-12-17 CN CN201911300923.8A patent/CN111198806B/zh active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101023625A (zh) * | 2004-01-16 | 2007-08-22 | 诺基亚公司 | 使用udp源节流进行网络拥塞控制的***和方法 |
CN102460393A (zh) * | 2009-05-01 | 2012-05-16 | 思杰***有限公司 | 用于在虚拟存储资源之间建立云桥的***和方法 |
CN102469028A (zh) * | 2010-10-28 | 2012-05-23 | 三星Sds株式会社 | 用于确保以太网环境中udp数据传输的公平性的设备和方法 |
CN105871911A (zh) * | 2016-06-02 | 2016-08-17 | 浪潮通用软件有限公司 | 一种服务调用引擎、方法及*** |
CN106411907A (zh) * | 2016-10-13 | 2017-02-15 | 广西咪付网络技术有限公司 | 一种数据传输方法和*** |
CN106874424A (zh) * | 2017-01-25 | 2017-06-20 | 杭州淘淘搜科技有限公司 | 一种基于MongoDB和Redis的网页数据采集处理方法及*** |
CN109800212A (zh) * | 2017-11-16 | 2019-05-24 | 航天信息股份有限公司 | 支持事务形式的中间件访问hdfs***的方法及中间件 |
CN109753531A (zh) * | 2018-12-26 | 2019-05-14 | 深圳市麦谷科技有限公司 | 一种大数据统计方法、***、计算机设备及存储介质 |
Non-Patent Citations (1)
Title |
---|
浅谈分布式事务实现技术及应用场景探讨;连城;《信息技术与信息化》(第10期);第187-189页 * |
Also Published As
Publication number | Publication date |
---|---|
CN111198806A (zh) | 2020-05-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111198806B (zh) | 基于服务开放平台的服务调用数据统计分析方法及*** | |
US11816172B2 (en) | Data processing method, server, and computer storage medium | |
CN105024872B (zh) | 网络性能测试的方法及装置 | |
CN108228322B (zh) | 一种分布式链路跟踪、分析方法及服务器、全局调度器 | |
US11681707B1 (en) | Analytics query response transmission | |
CN102857369A (zh) | 一种网站日志保存***及方法和装置 | |
US11792157B1 (en) | Detection of DNS beaconing through time-to-live and transmission analyses | |
CN110784486A (zh) | 一种工业漏洞扫描方法和*** | |
CN108228432A (zh) | 一种分布式链路跟踪、分析方法及服务器、全局调度器 | |
CN115865525A (zh) | 日志数据处理方法、装置、电子设备和存储介质 | |
CN102055620B (zh) | 监控用户体验的方法和*** | |
US10198737B2 (en) | Peer-to-peer data collector and analyzer | |
CN113453076B (zh) | 用户视频业务质量评估方法、装置、计算设备和存储介质 | |
Hu et al. | Deep semantics inspection over big network data at wire speed | |
CN111209566A (zh) | 一种多层威胁拦截的智能反爬虫***及方法 | |
US20220148029A1 (en) | Methods for determining advertisement usage by proxy log data | |
CN111245880A (zh) | 基于行为轨迹重建的用户体验监控方法及装置 | |
CN104750752A (zh) | 一种上网偏好用户群体的确定方法和设备 | |
CN111106980B (zh) | 一种带宽捆绑检测方法和装置 | |
CN110532242B (zh) | 业务消息发送方法和装置 | |
CN112492021A (zh) | 基于网络数据的业务服务调用关系路径检测方法 | |
CN112714033B (zh) | 视频集的特征信息确定方法及装置 | |
CN111163184A (zh) | 一种报文特征的提取方法和装置 | |
CN112787880B (zh) | 回放数据获取与流量回放方法、设备及存储介质 | |
CN115150297B (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |