一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

基于火花流的实时报警方法、相关装置及计算机存储介质与流程

2021-10-24 13:09:00 来源:中国专利 TAG:数据处理 火花 实时 装置 报警


1.本发明属于数据处理技术领域,更具体的说,尤其涉及一种基于火花流的实时报警方法、相关装置及计算机存储介质。


背景技术:

2.对于一个成熟的互联网公司来说,对海量数据利用程度的高低,决定了一个公司的决策路线,和发展方向,因此把pb数据存储级别,甚至eb和zb级别的数据进行处理分析显得尤为重要。
3.同样数据量越大代表用户发送的请求就越多,用户的每个请求都代表了我们程序的一个功能项,一旦功能出现问题,不仅影响程序的正常使用,也会导致用户的流失,最终给公司带来不必要的损失。但我们已将用户的行为日志收集,只要把日志利用起来,并将直接反映到我们的日志里面的重要数据利用起来,再用合理的技术在短时间内根据一定规则对海量数据进行分析,及时锁定问题,并解决。
4.目前对数据流进行计算分析的流处理框架有很多,比如第一代分布式计算引擎hadoop,二代流处理引擎spark,但处理速度和能力较差。


技术实现要素:

5.有鉴于此,本发明的目的在于提供一种基于火花流的实时报警方法、相关装置及计算机存储介质,用于提高数据处理速度、提高报警效率。
6.本发明第一方面公开了一种基于火花流的实时报警方法,包括:服务器的消息队列程序拉取所述服务器中落地日志文件到数据容器中;所述数据容器的数据消费者拉取所述数据容器中的数据到所述服务器的火花实时数据流程序进行消费计算;其中,所述消费计算包括:对所述数据进行元组格式化后进行聚合运算;所述火花实时数据流程序依据聚合运算结果,在满足报警情况下通过预设的报警方法进行报警。
7.可选的,所述数据容器的数据消费者拉取所述数据容器中的数据到所述服务器的火花实时数据流程序进行消费计算,包括:所述数据消费者拉取所述数据容器中数据;并将所述火花实时数据流转入离散分布算子轻度格式化数据;接着,流入扁平化算子进行扁平化格式化数据后,再用离散分布算子格式化数据成为元组后,用开窗算子对数据块进行分割,之后把数据块内的元组数据通过聚合算子进行聚合操作。
8.可选的,进行所述元组格式化后的数据格式为:(url,(head,err,1));其中,url为请求连接;head为请求头;err为请求是否错误;1为累加作用。
9.可选的,所述预设的报警方法为:调用抽象化方法。
10.可选的,在所述服务器的消息队列程序拉取所述服务器中落地日志文件到数据容器中之前,还包括:所述客户端收集用户的行为日志并发送到所述服务器;所述服务器将所述用户的行为日志落地生成日志文件,并存储。
11.可选的,所述客户端收集用户的行为日志并发送到所述服务器,包括:客户端需发出请求时,依据加密配置文件对数据进行加密;所述客户端将加密后的数据转换成二进制文件;所述客户端将所述二进制文件发送至服务器。
12.可选的,所述服务器将所述用户的行为日志落地生成日志文件,并存储,包括:所述服务器接收到客户端发出的二进制文件后,根据自身的加密配置文件,解析所述二进制文件;其中,所述服务器中的加密配置文件与所述客户端的加密配置文件相同;所述服务器将所述二进制文件解析成数据后,将所述数据落地生成日志文件,并存储。
13.本发明第二方面公开了一种服务器,包括:消息队列程序、数据容器的数据消费者和火花实时数据流程序;所述消息队列程序、数据容器的数据消费者和火花实时数据流程序,结合以实现如本发明第一方面任一项所述的基于火花流的实时报警方法中服务器执行的步骤。
14.本发明第三方面公开了一种电子设备,包括:一个或多个处理器;存储装置,其上存储有一个或多个程序;当所述一个或多个程序被所述一个或多个处理器执行时,使得所述一个或多个处理器实现如本发明第一方面任一项所述的基于火花流的实时报警方法中服务器执行的步骤。
15.本发明第四方面公开了一种计算机存储介质,其上存储有计算机程序,其中,所述计算机程序被处理器执行时实现如本发明第一方面任一项所述的基于火花流的实时报警方法中服务器执行的步骤。
16.从上述技术方案可知,本发明提供的一种基于火花流的实时报警方法,包括:服务器的消息队列程序拉取服务器中落地日志文件到数据容器中;数据容器的数据消费者拉取数据容器中的数据到服务器的火花实时数据流程序进行消费计算;其中,消费计算包括:对数据进行元组格式化后进行聚合运算;火花实时数据流程序依据聚合运算结果,在满足报警情况下通过预设的报警方法进行报警;从而实现提高数据处理速度,以及提高报警效率。
附图说明
17.为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
18.图1是本发明实施例提供一种基于火花流的实时报警方法的流程图;图2是本发明实施例提供的另一种基于火花流的实时报警方法的流程图;
图3是本发明实施例提供的一种服务器的示意图;图4是本发明实施例提供的一种电子设备的示意图。
具体实施方式
19.为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
20.在本技术中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
21.本发明实施例提供了一种基于火花流的实时报警方法,用于解决现有技术中第一代分布式计算引擎hadoop,二代流处理引擎spark,但处理速度和能力较差的问题。
22.参见图1,该基于火花流的实时报警方法,包括:s101、服务器的消息队列程序拉取服务器中落地日志文件到数据容器中。
23.需要说明的是,该服务器中存储有落地日志文件;该落地日志文件中记录着用户的行为日志。
24.也就是说,该消息队列程序将用户的行为日志拉取到数据容器中。需要说明的是,数据容器中的数据更容易被数据消费者获取,也即提高了数据传递的效率。也即,消息队列程序拉取服务器的落地日志文件到数据容器中,方便数据容器中数据的消费者去拉取数据容器中的数据进行消费计算。
25.s102、数据容器的数据消费者拉取数据容器中的数据到火花实时数据流程序进行消费计算。
26.其中,消费计算包括:对数据进行元组格式化后进行聚合运算。
27.需要说明的是,该消费计算不仅限于该元组格式化数据后进行聚合运算,也还可以包括运算,此处不再一一赘述,均在本技术的保护范围内。
28.s103、火花实时数据流程序依据聚合运算结果,在满足报警情况下通过预设的报警方法进行报警。
29.需要说明的是,数据容器中的数据为用户的行为日志,也就是说,数据消费者依据用户的行为判定是否存在异常,进而选择是否报警。
30.具体的,在用户使用客户端的时候,会产生用户请求,产生用户请求后会从客户端发送一条日志到服务器端,服务器接收用户日志,解析日志之后根据用户请求链接分组计算出错误请求,如请求服务返回400以上状态码都认为是错误;与整个批次请求服务次数总和的比值,并根据对应阈值进行报警。
31.在本实施例中,服务器的消息队列程序拉取服务器中落地日志文件到数据容器中;数据容器的数据消费者拉取数据容器中的数据到服务器的火花实时数据流程序进行消费计算;其中,消费计算包括:对数据进行元组格式化后进行聚合运算;火花实时数据流程
序依据聚合运算结果,在满足报警情况下通过预设的报警方法进行报警;从而实现提高数据处理速度,以及提高报警效率;也即,在大数据环境下,对海量用户请求数据返回的网络状态码和http状态码进行监控,如果网络状态码和http状态码发生异常就及时进行报警,通知运维及时修复问题,从而避免对公司造成不必要的损失。
32.在实际应用中,如图2所示,步骤s102、数据容器的数据消费者拉取数据容器中的数据到服务器的火花实时数据流程序进行消费计算;包括:s201、数据消费者拉取数据容器中数据。
33.也就是说,拉取用户的行为日志。
34.s202、将火花实时数据流转入离散分布算子轻度格式化数据。
35.s203、流入扁平化算子进行扁平化格式化数据。
36.s204、用离散分布算子格式化数据成为元组。
37.s205、用开窗算子对数据块进行分割。
38.s206、把数据块内的元组数据通过聚合算子进行聚合操作。
39.其中,聚合操作后流入执行算子对聚合运算结果通过封装好的报警方法进行报警。
40.需要说明的是,上述仅为步骤s102的一种示例,步骤s102的其他实现方式,此处不再一一赘述,均在本技术的保护范围内。
41.在实际应用中,进行元组格式化后的数据格式为:(url,(head,err,1))。
42.其中,url为请求连接;head为请求头;err为请求是否错误;1为累加作用。
43.当然,也可以是其他格式,只要数据均呈相同的格式展示即可,此处不再一一赘述,均在本技术的保护范围内。
44.预设的报警方法为:调用抽象化方法。
45.在本实施例中,通过火花流处理技术来发现程序中的问题并及时报警,无需对应用造成额外负担,增强用户体验,也给工程师们带来了更完善的运维支持,用报警的实时性,相对提升了程序的健壮性并减少了发现并锁定问题的时间。
46.在实际应用中,在服务器的消息队列程序拉取服务器中落地日志文件到数据容器中之前,还包括:客户端收集用户的行为日志并发送到服务器。
47.服务器将用户的行为日志落地生成日志文件,并存储。
48.需要说明的是,客户端向服务器发出请求后,服务端接收日志。此时,存在一些安全问题,如安全问题在于用户发出的请求参数可能被抓包,后获取用户信息,对用户造成潜在威胁。因此,可采取数据加密解密方式protobuf进行校验,这样既保证了数据的安全性,又提高了数据传输效率。详细校验步骤如下:(1)客户端需发出请求时,依据加密配置文件对数据进行加密。
49.也即,client需发出请求时根据protobuf数据加密配置文件,作为这次发送数据的加密格式。其中client为客户端。
50.(2)客户端将加密后的数据转换成二进制文件。
51.也即,根据client依据protobuf配置文件,将json转换成二进制文件。其中,json为数据。
52.(3)客户端将二进制文件发送至服务器。
53.也即,client将带protobuf加密格式的二进制文件传输给server。其中,server为服务器。
54.(4)服务器接收到客户端发出的二进制文件后,根据自身的加密配置文件,解析二进制文件;其中,服务器中的加密配置文件与客户端的加密配置文件相同。
55.也即,server接收到client发出的带protobuf加密格式的二进制文件后,根据server的protobuf配置文件,解析文件。其中,server与client的protobuf配置文件相同。
56.(5)服务器将二进制文件解析成数据后,将数据落地生成日志文件,并存储。
57.也即,server将二进制文件解析成json后,日志落地生成日志文件,并存储在server。
58.本发明另一实施例提供了一种服务器。
59.参见图3,该服务器,包括:消息队列程序10、数据容器的数据消费者20和火花实时数据流程序30。
60.消息队列程序10、数据容器的数据消费者20和火花实时数据流程序30,结合以实现如上述任一实施例提供的基于火花流的实时报警方法。
61.具体的,消息队列程序10,用于拉取服务器中落地日志文件到数据容器中。
62.需要说明的是,该服务器中存储有落地日志文件;该落地日志文件中记录着用户的行为日志。
63.也就是说,该消息队列程序将用户的行为日志拉取到数据容器中。需要说明的是,数据容器中的数据更容易被数据消费者获取,也即提高了数据传递的效率。也即,消息队列程序拉取服务器的落地日志文件到数据容器中,方便数据容器中数据的消费者去拉取数据容器中的数据进行消费计算。
64.数据容器的数据消费者20,用于拉取数据容器中的数据到服务器的火花实时数据流程序进行消费计算;其中,消费计算包括:对数据进行元组格式化后进行聚合运算。
65.其中,消费计算包括:对数据进行元组格式化后进行聚合运算。
66.需要说明的是,该消费计算不仅限于该元组格式化数据后进行聚合运算,也还可以包括运算,此处不再一一赘述,均在本技术的保护范围内。
67.火花实时数据流程序30,还用于依据聚合运算结果在满足报警情况下通过预设的报警方法进行报警。
68.需要说明的是,数据容器中的数据为用户的行为日志,也就是说,数据消费者依据用户的行为判定是否存在异常,进而选择是否报警。
69.具体的,在用户使用客户端的时候,会产生用户请求,产生用户请求后会从客户端发送一条日志到服务器端,服务器接收用户日志,解析日志之后根据用户请求链接分组计算出错误请求,如请求服务返回400以上状态码都认为是错误;与整个批次请求服务次数总和的比值,并根据对应阈值进行报警。
70.上述各个程序的工作过程和原理,详情参见上述实施例,此处不再一一赘述,均在本技术的保护范围内。
71.本技术另一实施例提供了一种计算机存储介质,其上存储有计算机程序,其中,计算机程序被处理器执行时实现如上述实施例中任意一项所述的基于火花流的实时报警方
法。
72.在本公开的上下文中,机器可读介质可以是有形的介质,其可以包含或存储以供指令执行系统、装置或设备使用或与指令执行系统、装置或设备结合地使用的程序。机器可读介质可以是机器可读信号介质或机器可读储存介质。机器可读介质可以包括但不限于电子的、磁性的、光学的、电磁的、红外的、或半导体系统、装置或设备,或者上述内容的任何合适组合。机器可读存储介质的更具体示例会包括基于一个或多个线的电气连接、便携式计算机盘、硬盘、随机存取存储器(ram)、只读存储器(rom)、可擦除可编程只读存储器(eprom或快闪存储器)、光纤、便捷式紧凑盘只读存储器(cd

rom)、光学储存设备、磁储存设备、或上述内容的任何合适组合。
73.需要说明的是,本公开上述的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(ram)、只读存储器(rom)、可擦式可编程只读存储器(eprom或闪存)、光纤、便携式紧凑磁盘只读存储器(cd

rom)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本公开中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本公开中,计算机可读信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读信号介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:电线、光缆、rf(射频)等等,或者上述的任意合适的组合。
74.上述计算机可读介质可以是上述电子设备中所包含的;也可以是单独存在,而未装配入该电子设备中。
75.本发明另一实施例提供了一种电子设备,如图4所示,包括:一个或多个处理器601。
76.存储装置602,其上存储有一个或多个程序。
77.当一个或多个程序被一个或多个处理器601执行时,使得一个或多个处理器601实现如上述实施例中任意一项的基于火花流的实时报警方法。
78.特别地,根据本公开的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本公开的实施例包括一种计算机程序产品,其包括承载在非暂态计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。
79.本说明书中的各个实施例中记载的特征可以相互替换或者组合,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统或系统实施例而言,由于其基本相似于方法实施例,所以描述得比较简单,相关之处参见方法实施例的部分说明即可。以上所描述的系统及系统实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显
示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
80.专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
81.对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献

  • 日榜
  • 周榜
  • 月榜