Sentinel 【新特性】关于dashboard中的实时监控和监控数据保存的MetricsRepository相关

vdzxcuhz  于 4个月前  发布在  其他
关注(0)|答案(2)|浏览(166)

Issue Description

在开源的控制台中,
默认实现的 InMemoryMetricsRepository 只按秒储存了五分钟的数据, 而且没有统计相关的逻辑。
比如 查看1天内所有资源QPS排行,方便调优。

另外在 MetricsRepository 中,
List<T> queryByAppAndResourceBetween(String app, String resource, long startTime, long endTime);
此方法应该增加一个扩展参数用于传递查询参数, 不然只能从数据库查出所有数据再从业务层进行过滤。

Describe what happened (or what feature you want)

修改 InMemoryMetricsRepository 实现, 默认增加以5分钟的维度进行储存统计数据。
这样方便某些场景,比如需要查看最近一天的统计数据走势,
或者要查看服务资源的总体调用情况,以便定位并进一步优化频繁访问的资源。

因为是按照5分钟的维度进行统计储存,这样即使是一天的数据也只有300条不到, 内存占用极低也很方便使用。

xtupzzrd

xtupzzrd1#

企业级生产上线,不应该在内存中区处理,应该借助于外部存储,达到能实时秒级监控查看;同时解决dashboard单点的问题,集群化部署可扩展;以及优化心跳上报,过多的http心跳不适合大量应用,大量实例的情况。

oxcyiej7

oxcyiej72#

线上Http是不太适合,但是测试环境中提供一个开箱即用的功能也是挺好的
测试环境中的接口调用情况统计,也能大概的反应出接口的优化方向
特别是对于小企业来说,可能更倾向花费一点内存

相关问题