首页 / 专利库 / 软件 / 软件包 / 基于Prometheus性能监控系统的服务器保护方法

基于Prometheus性能监控系统服务器保护方法

阅读:1055发布:2020-06-27

专利汇可以提供基于Prometheus性能监控系统服务器保护方法专利检索,专利查询,专利分析的服务。并且本 发明 公开了一种基于Prometheus性能 监控系统 的 服务器 保护方法,包括以下步骤:步骤1:在目标服务器上安装Prometheus性能监控系统的 软件 包,通过Prometheus性能监控系统收集能够判断服务器性能的监控数据;步骤2:将收集到的目标服务器的监控数据进行存储;步骤3:将目标服务器的监控数据展示在对应的数据图表系统;步骤4:在数据图表系统中设置服务器限流的触 发条 件,并判断是否触发限流策略;步骤5:触发哨兵队列限流策略,对服务器进行限流。本发明方法自动化进行限制流量,提升了服务的 稳定性 ,避免一些昂贵不需要的升级扩容,降低了人 力 成本,也节约了服务器资源。,下面是基于Prometheus性能监控系统服务器保护方法专利的具体信息内容。

1.一种基于Prometheus性能监控系统服务器保护方法,其特征在于,包括以下步骤:
步骤1:在目标服务器上安装Prometheus性能监控系统的软件包,通过Prometheus性能监控系统收集能够判断服务器性能的监控数据,包括CPU内存、API响应的时间;
步骤2:将步骤1中收集到的目标服务器的监控数据进行存储;
步骤3:将目标服务器的监控数据展示在对应的数据图表系统;
步骤4:在数据图表系统中设置服务器限流的触发条件,并判断是否触发限流策略,进而对服务器进行限流;
步骤5:对服务器进行限流,包括:
1)若服务器流量变大,触发哨兵队列限流策略,即将新进入的流量加入队列,当服务器压在设定时间内恢复正常并且哨兵队列里面没有数据,则取消限流策略;
2)若服务器流量变大,触发哨兵队列限流策略,当服务器压力在设定时间内没有恢复正常,则依然进行限流;若哨兵队列存储超过负载,则关闭多余请求,保护当前服务。
2.如权利要求1所述的基于Prometheus性能监控系统的服务器保护方法,其特征在于,所述数据图表系统采用Grafana。
3.如权利要求1所述的基于Prometheus性能监控系统的服务器保护方法,其特征在于,所述服务器限流的触发条件为CPU内存消耗占比大于80%及API响应的时间值大于500ms。

说明书全文

基于Prometheus性能监控系统服务器保护方法

技术领域

[0001] 本发明涉及服务器保护领域,特别是一种基于Prometheus性能监控系统的服务器保护方法。

背景技术

[0002] 网站服务器往往由于突发事件,服务流量突然增大导致部分服务崩溃,进而导致整个服务出现不可用的情况,影响整个系统的可用性。为保护服务器正常运行,提升服务的可用性,需要对突发流量情况进行限流。
[0003] 现有技术中,常见的是通过令牌桶算法进行限流,保护服务器。通过令牌桶预先在业务代码里面估算好服务器能承担的大小,进行限制,是可以一定程度做到对服务器保护,节约资源的情况。但通过提前在代码里面估算服务器承担的流量大小,进行限流,这不是实时根据服务器压负载情况来进行调整的,存在以下问题:1)估算服务能接受流量过高,导致服务还没有到达限制流量的阈值就崩溃;2)估算服务能接受流量过低,导致服务资源没有更好使用,从而浪费了资源。
[0004] 相关术语
[0005] Prometheus(普罗米修斯):是一套使用Go语言开发的开源监控系统,基本原理是通过HTTP(超文本传输)协议周期性抓取被监控组件的状态,任意组件只要提供对应的HTTP接口就可以接入监控。
[0006] Redis:是一个高性能的键值对内存数据库,使用C语言编写。
[0007] Redis Sentinel(哨兵):是Redis官方推荐的高可用(HA)解决方案,用于监控Redis集群中节点状态的工具。
[0008] 队列:一种特殊的线性表,队列是一种操作受限制的线性表;进行插入操作的端称为队尾,进行删除操作的端称为队头。

发明内容

[0009] 本发明所要解决的技术问题是提供一种基于Prometheus性能监控系统的服务器保护方法,通过Prometheus性能监控系统来监控服务器数据,再通过Redis Sentinel高可用架构队列进行限流,增加服务的稳定性和可用性。
[0010] 为解决上述技术问题,本发明采用的技术方案是:
[0011] 一种基于Prometheus性能监控系统的服务器保护方法,包括以下步骤:
[0012] 步骤1:在目标服务器上安装Prometheus性能监控系统的软件包,通过Prometheus性能监控系统收集能够判断服务器性能的监控数据,包括CPU内存、API响应的时间;
[0013] 步骤2:将步骤1中收集到的目标服务器的监控数据进行存储;
[0014] 步骤3:将目标服务器的监控数据展示在对应的数据图表系统;
[0015] 步骤4:在数据图表系统中设置服务器限流的触发条件,并判断是否触发限流策略,进而对服务器进行限流;
[0016] 步骤5:对服务器进行限流,包括:
[0017] 1)若服务器流量变大,触发哨兵队列限流策略,即将新进入的流量加入队列,当服务器压力在设定时间内恢复正常并且哨兵队列里面没有数据,则取消限流策略;
[0018] 2)若服务器流量变大,触发哨兵队列限流策略,当服务器压力在设定时间内没有恢复正常,则依然进行限流;若哨兵队列存储超过负载,则关闭多余请求,保护当前服务。
[0019] 进一步的,所述数据图表系统采用Grafana。
[0020] 进一步的,所述服务器限流的触发条件为CPU内存消耗占比大于80%及API响应的时间值大于500ms。
[0021] 与现有技术相比,本发明的有益效果是:在遇到短时突发流量的时候,可以通过这种监控服务器压力情况自动化进行限制流量来提升服务的稳定性,避免一些昂贵不需要的升级扩容,降低人力成本,也节约了服务器资源。附图说明
[0022] 图1是本发明基于Prometheus性能监控系统的服务器保护方法的监控过程。
[0023] 图2是本发明基于Prometheus性能监控系统的服务器保护方法的限流过程。

具体实施方式

[0024] 下面结合附图和具体实施方式对本发明作进一步详细的说明。本发明限流方法解决了以下问题:
[0025] 1)实时响应:网站流量因为一些热点事件或者活动突然导致某一瞬间流量突然增加,通过Prometheus性能监控系统可以实时判断服务器压力是否过大,进而决定是否实时开启流量限制服务;
[0026] 2)自动化限流:根据业务场景不同,实时判断服务流量是否过大的规则(比如CPU内存占用率超过80%),提前设置好对应条件来触发开启限流配置,快速灵活;
[0027] 3)减少资源消耗:通过实时判断流量大小(通过当前CPU内存判断服务器能承受的压力),继而来进行自动化限流,保护服务器,可以解决瞬时流量增大情况,既保护了服务器正常运行,也不必立即新增服务器资源,减少服务器资源的损耗和时间浪费。
[0028] 本发明基于Prometheus性能监控系统的服务器保护方法详述如下:
[0029] 一、服务器性能实时判断
[0030] 1、在目标服务器上安装Prometheus性能监控系统的软件包,通过Prometheus性能监控系统收集能够判断服务器性能的监控数据,包括CPU内存、API响应的时间;
[0031] 2、监控系统(Prometheus)将收集好的监控数据进行存储;
[0032] 3、将目标服务器的监控数据展示在对应的数据图表系统(Grafana);
[0033] 4、在数据图表系统中设置服务器限流的触发条件(例如CPU内存超过80%,API响应时间大于500ms),判断是否触发限流策略。
[0034] 二、自动化限流
[0035] 一般情况下,服务器压力不大(CPU内存使用占比等低于50%),则不限流(保持正常);当需要限流时,执行限流策略,包括:
[0036] 1、若服务器流量变大(CPU内存超过80%,API响应时间大于500ms),则触发Redis Sentinel(哨兵)队列限流策略(将新进入的流量加入队列),但是服务器压力在设定时间(如30分钟)恢复正常并且Redis队列里面没有数据,则取消限流策略。
[0037] 2、若服务器流量变大,触发Redis Sentinel队列限流策略,但是服务器压力在设定时间(如30分钟)没有恢复正常,则依然进行限流,如果Redis Sentinel队列存储超过负载,则关闭多余请求,保护当前服务。
高效检索全球专利

专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

申请试用

分析报告

专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

申请试用

QQ群二维码
意见反馈