主要知识点:

  • percentile_ranks的用法
  • percentile的优化

 
 

一、percentile_ranks的用法

SLA:就是所提供的服务的标准。
比如一个网站的提供的访问延时的SLA,确保所有的请求100%都必须在200ms以内,在大公司内一般都是要求100%在200ms以内,如果超过1s,则需要升级到A级故障,代表网站的访问性能和用户体验急剧下降。

现有一个需求:在200ms以内的有百分之多少,在1000毫秒以内的有百分之多少,对于这个需求就要用到percentile ranks metric这个方法,这个percentile ranks,在实际工作中比pencentile还要常用。他可以统计电商系统中按照品牌分组,计算,电视机,售价在1000元的占比,在2000以内的占比,3000占元以内的占比等等。

 
 

语法如下:

 
 

GET /website/logs/_search

{

"size": 0,

"aggs": {

"group_by_province": {

"terms": {"field": "province"},

"aggs": {

"latency_percentile_ranks": {

"percentile_ranks": {"field": "latency","values": [200,1000]}

}

}

}

}

}

 
 

执行结果如下:

"aggregations": {

"group_by_province": {

"doc_count_error_upper_bound": 0,

"sum_other_doc_count": 0,

"buckets": [

{

"key": "新疆",

"doc_count": 6,

"latency_percentile_ranks": {

"values": {

"200.0": 29.40613026819923,

"1000.0": 100

}

}

},

{

"key": "江苏",

"doc_count": 6,

"latency_percentile_ranks": {

"values": {

"200.0": 100,

"1000.0": 100

}

}

}

]

}

}

}

 
 

二、percentile的优化

 
 

percentile_ranks在es底层用的是TDigest算法,他会用很多节点来执行百分比的近似估计计算,当然也会有误差,但是所用到的节点越多越精准。

compression参数就是用来限制节点数量,默认compression的值是100,也就是compression * 20 = 2000个node去参与计算,compression越大,占用内存越多,越精准,性能越差

一个节点占大约占用32字节,100 * 20 * 32 = 64KB。如果你想要percentile算法越精准,compression可以设置的越大

51.percentiles rank以及网站访问时延SLA统计的更多相关文章

  1. Servlet学习的两个案例之网站访问次数的统计

    一.统计次数的Servlet源码 package com.shanrengo; import java.io.IOException; import javax.servlet.ServletCont ...

  2. 网站每日PV/IP统计/总带宽/URL统计脚本分享(依据网站访问日志)

    在平时的运维工作中,我们运维人员需要清楚自己网站每天的总访问量.总带宽.ip统计和url统计等.虽然网站已经在服务商那里做了CDN加速,所以网站流量压力都在前方CDN层了像每日PV,带宽,ip统计等数 ...

  3. Apache服务器网站访问伪静态内页出现No input file specified.的完美解决方案

    原文地址:Apache服务器网站访问伪静态内页出现No input file specified.的完美解决方案 启用REWRITE的伪静态功能的时候,首页可以访问,而访问内页的时候,就提示:&quo ...

  4. 巧用linux服务器的/dev/shm/,如果合理使用,可以避开磁盘IO不给力,提高网站访问速度。

    巧用linux服务器的/dev/shm/ 巧用linux服务器的/dev/shm/,如果合理使用,可以避开磁盘IO不给力,提高网站访问速度. 首先让我们认识一下,什么是tmpfs和/dev/shm/? ...

  5. 如何使用ping和tracert命令测试网站访问速度

    在我们平时访问的网站中,有一些网站访问速度非常快,比如百度搜索网站和一些门户网站,有些网站访问很慢,有些网站甚至无法访问.那么我们该如何判断这些网站的访问速度呢?下面我们就使用Windows的ping ...

  6. Windows Server 2008 网站访问PHP响应慢的解决方法

    公司新上了一个网站,但是在配置完PHP环境之后却发现了问题,访问HTML速度飞快,而访问PHP网页时就要卡顿1秒,响应很慢的样子,排除了带宽的因素之后,在百度上搜了一圈竟然解决了,现在将方法转载给大家 ...

  7. 10倍速!一招儿解决因googleapis被墙导致的许多国外网站访问速度慢的问题

    1x.com 是我非常喜欢的一家国外的摄影网站.但,打开它的首页要1分多钟!点击小图看大图的二级页面根本打不开.看着写着“Nude content”的小图却点不开大图的心情你们造吗?!很多国外网站访问 ...

  8. 开源网站访问统计系统Piwik

    http://www.piwik.cn/ http://www.piwik.org/ Piwik 是一套基于 Php+MySQL 技术构建,能够与 Google Analytics 相媲美的开源网站访 ...

  9. 使用 Nginx 提升网站访问速度

    使用 Nginx 提升网站访问速度 http://www.ibm.com/developerworks/cn/web/wa-lo-nginx/ Nginx 简介 Nginx ("engine ...

随机推荐

  1. 将ppt转换成PDF

    import sys import os import glob import win32com.client def convert(files, formatType = 32): powerpo ...

  2. 让mongodb执行js文件

    环境: Linux js代码: 循环删除表中的数据: clear-mongodb-dialog.js print('=========BEGIN=========='); for(var i of [ ...

  3. 【OI】同余方程

    一.同余方程的判定 我们知道同余方程是形如 ax ≡ b (mod n)   的东西,用文字表达就是: ax和b除以n的余数相同 那么,经过如下推理:(用=代替恒等于) ax=b (mod n) ax ...

  4. research plan2222

    Thank you for calling. I've been looking forward to this call for a long time.Now, let me introduce ...

  5. Python猜年龄

    题目:Python实现猜年龄 步骤一:实现最简单的猜年龄 # 事先定义 dark_knight_age = 28 user_age = input('Please guess my age:') us ...

  6. 一款使用C# .NET开发的SIP网络电话客户端完整源码

    一款使用C# .NET开发的SIP客户端开源项目.测试可编译通过运行,特此分享一下.可以对接ASTGO.VOS2009.VOS3000.NTS.UCS等各种SIP协议的软交换! 下载地址:https: ...

  7. 详细解析Linux scp命令的应用(转载)

    转自:http://os.51cto.com/art/201003/187301.htm Linux scp命令用于Linux之间复制文件和目录,具体如何使用这里好好介绍一下,从本地复制到远程.从远程 ...

  8. [App Store Connect帮助]二、 添加、编辑和删除用户(1)用户帐户和职能概述

    您可以在 App Store Connect 的“用户和访问”部分管理用户.添加沙盒测试员以及管理 API 密钥. 用户职能决定了用户对 App Store Connect 和 Apple Devel ...

  9. Java初学者如何排查学习中遇到的问题

    大多数新手或者刚入门的人在学习的时候,不管是看视频还是看书,都会遇到各种各样的问题,比如JDK配置了,但是javac没有办法执行,Eclipse安装了,但是打不开,快捷键用不了,照着视频敲了但是和视频 ...

  10. HTML-ul分分钟理解

    在HTML中,列表有三种,如图分别是有序.无序和自定义列表.上面是我在网络上找到的一张图片很明了就看以看出来,今天要分享的就是其中的无序列表Ul(unordered list),给大家整理了一下我所知 ...