我有一个Rails应用程序,它广泛使用缓存,我想知道应用程序中不同位置的缓存命中率。低命中率的地方显然需要注意。但首先要测量!
为了获得真实的数据,我使用石墨统计组合和采用统计仪器宝石的定制达利仪器。应用程序中的所有键都采用[“地方”,详细信息...]
的形式,因此我在石墨中获得了以下指标:
现在我想显示所有命中率。我能够为一个地方提出以下公式:
divideSeries(stats.cache.place1.hits, sumSeries(stats.cache.place1.*))
它工作得很好,但是有几十个地方,我讨厌复制它,更不用说会出现新的地方了。
石墨专家们,这是一个问题:有没有办法显示所有地方的点击率?我在文档中见过group*函数,但它们让我困惑。
理想情况下,我想将我的位置分为4类:
如果有任何想法如何使用石墨进行这种分析,我将不胜感激(我可以请求JSON格式的数据并进行自己的数学计算,但我怀疑一定有更简单的方法)。
您可以在多个级别使用 glob,因此对于所有缓存如何执行的全局视图:
divideSeries(stats.cache.*.hits, sumSeries(stats.cache.*.*))
对于您提到的4个类别,< code > most except 函数可能比较好,这将有助于找到最高/最低的缓存率。
mostDeviant(5, divideSeries(stats.cache.*.hits, sumSeries(stats.cache.*.*)))
根据请求将它们分组,然后显示一个单独的派生比率是很困难的。使用重复的< code>groupByNode和< code>highestAverage的回调函数可能有效
highestAverage(groupByNode(groupByNode(stats.cache.*.*, 3, "sumSeries"), 2, "divideSeries"), 10)
顺便说一句,对于大多数LRU(最近使用最少)缓存逐出方案,删除缓存没有多大意义,因为它不会争用缓存空间。
现在,这个脚本输出了乍一看应该输出的内容。输出的格式为,但是没有绘制图形。它们出现在石墨仪表板上,但它们是空的。我已经用Wireshark检查了发送到graphite服务器的输出。与只有LF的linux相反,在windows中,消息被附加了CRLF。我手工添加了,在一小段时间内,它确实发挥了作用,但现在它停止工作了。 我的问题是,我在传输中做错了什么,因为我一直在分析trafic,来自linux机
中等公司面经,uu参考一下,练练手,全程一个多小时,问题不大 用过公司产品吗?(用过几次) CSS相关,响应式布局、单位、CSS层面优化、base64、精灵图、动画实现 实现一个正方形,大小不确定,不用响应式,不写js 垂直水平居中的方案,说了四种,还让说 ==和===的区别 判断数组的方法 内存相关,引用 实现异步的方式有哪些 代码输出,宏任务、微任务 this指向代码输出 实现类继承的方法,c
我每分钟从另一台服务器向托管graphite的服务器发送4个指标。我已经安装了graphite 我使用graphite和Grafana进行实时显示,并将Grafana设置为每10秒自动刷新一次。延迟3分钟有点不寻常。我怀疑网络是否造成了这么大的延迟。是否有必要调查一下为什么延迟如此之大? 非常感谢。
有没有一种方法可以直接将显微轮廓指标发送到石墨?我找到的关于Quarkus的唯一指南是https://Quarkus.io/guides/microprofile-metrics。我正在寻找与Spring Boot https://micrometer.io/docs/registry/graphite类似的东西。我们是否有相同的东西,但在Quarkus上下文中(有本机映像支持)?
有没有人能够在同一测试中使用阿奎利安持久性扩展与阿奎利安石墨烯/硒?我有一个项目正在使用持久性&无人机/石墨烯的扩展,它们各自都工作得很好。我可以用持久性配置数据库进行集成测试,我可以用Drone做UI验收测试。 问题是当我尝试在无人机测试中使用持久性扩展时。由于某些原因,持久性扩展似乎没有执行,因为数据库从未被填充。是否需要做一些特殊的事情来使持久性扩展能够使用Arquillian在客户端模式下