【技术实现步骤摘要】
基于有限时序数据队列实现API实时预警的系统及方法
本专利技术涉及微服务应用程序领域,具体涉及基于有限时序数据队列实现API实时预警的系统及方法。
技术介绍
微服务架构是一项在云中部署应用和服务的新技术。微服务可以在“自己的程序”中运行,并通过“轻量级设备与HTTP型API进行沟通”。关键在于该服务可以在自己的程序中运行。通过这一点我们就可以将服务公开与微服务架构(在现有系统中分布一个API)区分开来。在服务公开中,许多服务都可以被内部独立进程所限制。如果其中任何一个服务需要增加某种功能,那么就必须缩小进程范围。在微服务架构中,只需要在特定的某种服务中增加所需功能,而不影响整体进程的架构。API(ApplicationProgrammingInterface,应用程序接口)是一些预先定义的函数,或指软件系统不同组成部分衔接的约定。目的是提供应用程序与开发人员基于某软件或硬件得以访问一组例程的能力,而又无需访问原码,或理解内部工作机制的细节。微服务架构下所有API的请求都必须经过API网关进行路由和数据转发,而企业后端业务系统经常存在响应超时、网络闪断、业务执行异常、API主动下线等不可预知的情况,而作为API的调用方则存在同一IP的大量请求、同一时间大流量请求造成API网关出现服务中断或不可用等风险,因为API网关或企业的运维人员必须要能实时感知这种即将发生的风险并提前做好应对措施,此时就需要API网关能实时准确的把这些风险信息第一时间发送给管理人员。目前的API网关主要是作为HTTP流量转发 ...
【技术保护点】
1.基于有限时序数据队列实现API实时预警的系统,其特征在于:包括有限时序队列管理模块、预警规则匹配器、响应超时预警模块、错误码预警模块和请求速率预警模块;所述有限时序队列管理模块用于在内存中构建一个有限的具有时间顺序的消息队列集合,并通过消息队列集合来实时存储所有API的请求数据并定时清除过期的API请求数据;所述预警规则匹配器用于将接收的API相关请求数据与预设的预警规则数据进行匹配计算;所述响应超时预警模块用于实时收集消息队列集合中API的响应时间,并将API的响应时间发送至预警规则匹配器与预警规则进行匹配,当反馈的匹配结果达到触发条件时立即发送超时预警消息给管理人员;所述错误码预警模块用于实时收集消息队列集合中API的返回错误码,并将API的返回错误码发送至预警规则匹配器与预警规则进行匹配,当反馈的匹配结果达到触发条件时立即发送超速预警消息给管理人员;所述请求速率预警模块用于实时收集消息队列集合中API的每秒请求次数,并将API的每秒请求次数发送至预警规则匹配器与预警规则进行匹配,当反馈的匹配结果达到触发条件时立即发送超速预警消息给管理人员。/n
【技术特征摘要】
1.基于有限时序数据队列实现API实时预警的系统,其特征在于:包括有限时序队列管理模块、预警规则匹配器、响应超时预警模块、错误码预警模块和请求速率预警模块;所述有限时序队列管理模块用于在内存中构建一个有限的具有时间顺序的消息队列集合,并通过消息队列集合来实时存储所有API的请求数据并定时清除过期的API请求数据;所述预警规则匹配器用于将接收的API相关请求数据与预设的预警规则数据进行匹配计算;所述响应超时预警模块用于实时收集消息队列集合中API的响应时间,并将API的响应时间发送至预警规则匹配器与预警规则进行匹配,当反馈的匹配结果达到触发条件时立即发送超时预警消息给管理人员;所述错误码预警模块用于实时收集消息队列集合中API的返回错误码,并将API的返回错误码发送至预警规则匹配器与预警规则进行匹配,当反馈的匹配结果达到触发条件时立即发送超速预警消息给管理人员;所述请求速率预警模块用于实时收集消息队列集合中API的每秒请求次数,并将API的每秒请求次数发送至预警规则匹配器与预警规则进行匹配,当反馈的匹配结果达到触发条件时立即发送超速预警消息给管理人员。
2.根据权利要求1所述的基于有限时序数据队列实现API实时预警的系统,其特征在于:所述有限时序队列管理模块创建一个有限的LinkedList集合对像,并限定集合对像的最大可存数据量;所述预警规则匹配器读取所有预警规则到内存中,并根据当前请求的HTTPURL进行循环运算,看是否匹配到某个预警规则;所述响应超时预警模块的处理信息包括规则名称、超时时间、预警间隔时间、生效服务器、预警触发次数、当前状态、累计超时次数、触发超时预警的次数、预警内容和事件API;所述错误码预警模块的处理信息包括错误码规则名称、HTTP错误码、预警间隔时间、生效服务器、预警触发次数、当前状态、累计请求次数、触发预警的HTTP错误次数、预警内容和事件API;所述请求速率预警模块的处理信息包括规则名称、限速类型、预警间隔时间、生效服务器、预警触发次数、当前状态、速率维度、总请求次数、累计超速次数、预警内容和事件API。
3.根据权利要求1或2所述的基于有限时序数据队列实现API实时预警的系统,提供基于有限时序数据队列实现API实时预警的方法,其特征在于,包括以下步骤:
S1、创建各类API的预警规则;
S2、在创建的预警规则下添加需要预警和需要排除预警的APIURL地址;
S3、发布预警规则到计算引擎中;
S4、构建有限的具有时间顺序的消息队列集合,并通过消息队列集合实时存储所有API的请求数据,在队列中实时记录API请求数据;
S5、把消息队列集合中...
【专利技术属性】
技术研发人员:陆才慧,
申请(专利权)人:谷云科技广州有限责任公司,
类型:发明
国别省市:广东;44
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。