面试官:知道你的接口QPS是多少么?

戳蓝字“CSDN云计算”关注我们哦!
640?wx_fmt=jpeg
作者 |  孤独烟
责编 | 阿秃

引言
大家好,我是渣渣烟。
我又来水文章了。这篇文章我个人感觉含金量不是太大,大概5分钟左右就能看完!其实大家都知道,我不爱写这种操作型的文章,一顿截图写几个命令就搞定了,含金量不高。
然而,近期有一段聊天记录如下:
640?wx_fmt=jpeg
看到这里,不要吃惊,不要惊讶!
那个很猥琐的,没有打码的头像,正是渣渣烟本人(此处应有反驳的声音,那个头像哪里猥琐了,分明帅气逼人好么)!
所以,牛皮都吹出去了。写个文章,自己给自己圆上!

正文

QPS是什么

我们先回忆一下,QPS的概念如下所示:
QPS(Query Per Second):每秒请求数,就是说服务器在一秒的时间内处理了多少个请求。
那我们怎么估出每秒钟能处理多少请求呢?
OK,用日志来估计!那日志怎么记录呢,细分下来,有两种方式。
方式一:自己在接口里记录
@RestController  	
@RequestMapping("/home")  	
public class IndexController {	//省略	@RequestMapping("/index")  	String index() {  	logger.info("渣渣烟");	return "index";  	}  	
}
假设现在我要统计index这个接口的QPS!
OK,什么叫能体现该接口特性的字符串呢!就像上面的"渣渣烟"这个字符串,只在index这个接口里出现过,没在其他其他接口里出现过!因此,只要统计出"渣渣烟"这个字符串在日志里的出现次数,就能知道该接口的请求次数!

什么叫具有唯一性的字符串呢!所谓唯一性,指的是"渣渣烟"这个字符串,在这个接口的一次调用流程中,只出现一次!如果出现两次,就会导致到时候统计出来的次数会多一倍,所以尽量选择具有唯一性的字段!

方式二:利用tomcat的access log
此时,你访问一次/home/index地址,会有下面这样日志
那么,你就可以根据日志中,该记录的出现次数,统计index接口的QPS。

实战

假设,你这会日志已经拿到手了,名字为xxx.log。
假设日志内容如下
这个时候,你执行一串命令长下面这样的,进行统计就行!
出来等结果就是:
然后你就知道,原来在20:40:44 分。这个接口的QPS最高,达到了惊人的2QPS!
现在,来讲一下命令什么意思!
cat xxx.log:读文件内容	
grep 'GET /mvc2':将文件内容按照GET /mvc2进行过滤	
cut -d ' ' -f4:过滤出来的内容按照空格进行分割,取第四列内容	
uniq -c:每列旁边显示该行重复出现的次数	
sort -n -r:依照数值的大小排序
那么,如果是其他日志格式,无外乎cut语句的处理不同而已,道理类似!此法可以估算出单机的某接口的QPS是多少!

估算

我们现在估计出了单机的QPS。接下来,估算集群的QPS。
这就要根据负载均衡的策略来估计!
比如,你部署了32台机器,负载均衡的策略恰巧为轮询,那集群的QPS就是单机的QPS乘32就好了。
所以,根据具体的策略,来估计整个集群的QPS多大!
然后接下来就是:
640?wx_fmt=png

多嘴一句,一般2000QPS够了!

640?wx_fmt=png

640?wx_fmt=png

福利
扫描添加小编微信,备注“姓名+公司职位”,入驻【CSDN博客】,加入【云计算学习交流群】,和志同道合的朋友们共同打卡学习!

640?wx_fmt=jpeg

推荐阅读:




真香,朕在看了!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/521023.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Module 让 Terraform 使用更简单

众所周知,Terraform 是一个开源的自动化的资源编排工具,支持多家云服务提供商。阿里云作为第三大云服务提供商,terraform-alicloud-provider 已经支持了超过 90 多个 Resource 和 Data Source,覆盖20多个服务和产品,吸…

android java 实体类 object变量 保存_Java中的实体类--Serializable接口、transient 关键字...

在java中,实体类是一个非常重要的概念,我们可以在实体类中封装对象、设置其属性和方法等。关于实体类,也经常涉及到适配器模式、装饰者模式等设计模式。那么在实际代码开发中,关于实体类的注意事项有哪些呢?1. Seriali…

杭州云栖大会阿里云放大招,8K远程医疗会诊引关注

大家每天都会照镜子,镜子里的一切都清清楚楚,足可乱真,可是你想过有一天看视频直播就像照镜子么? 这不,在云栖大会的C馆里,8K超高清直播体验馆前异常火爆,在这里,很多参会者都围着有…

「2019 嵌入式智能国际大会」 399 元超值学生票来啦,帮你豪省 2600 元!

2019 嵌入式智能国际大会即将来袭!购票官网:https://dwz.cn/z1jHouwE物联网是继计算机、互联网和移动通信之后的又一次信息产业的革命性发展,在互联网和移动互联网高速发展的时代,几乎所有行业都有数据联网的需求。无论是国外的科…

【杭州云栖】飞天技术汇大视频专场:全民视频时代下的创新技术之路

2018杭州•云栖大会在9月19日如期召开,在四天时间内将举行2场主论坛、170多场前沿峰会。在9月19日上午的飞天技术汇-大视频专场中,多位阿里云技术专家、合作伙伴、客户为现场观众分享了各自领域的多媒体研发成果,进行多款重磅产品的发布&…

Centos7 使用Docker 安装Oracle精简版本

文章目录一、Docker1. 在线安装Docker2. 启动docker3. 使用docker拉取Oracle镜像4. 看拉取的oracle镜像5. 创建守护式oracle容器并启动容器6. 查看正在运行的容器二、oracle容器配置篇2.1. 进入oracle容器的控制台2.2. 切换root用户配置环境变量2.3. 设置系统及用户密码三、登录…

sip协议详解_SIP协议详解-INVITE消息发送过程

SIP协议是VoIP中最重要的信令控制协议。SIP中第一件事情就是主叫发送INVITE给被叫,被叫响铃。本文从多角度详细描述INVITE消息发送的全过程。一、阅读RFC权威描述关于INVITE消息发送,先查看RFC 3261中权威描述:INVITE client transaction: ht…

【杭州云栖】飞天技术汇CDN与边缘计算专场:让内容离消费者更进一步

【杭州云栖】飞天技术汇CDN与边缘计算专场:让内容离消费者更进一步 在5G移动通信、IoT万物智联时代即将到来的大背景下,越来越多的应用和数据来自边缘位置,呈现低延时、高带宽、大连接、本地化的业务特征,那么如何协同阿里云全球…

迈克尔·戴尔再次到访2019戴尔科技峰会,为“戴尔中国4.0+战略”加个码……

10月25日,以“拓界成真”为主题的2019戴尔科技峰会在北京国家会议中心隆重举行。戴尔科技集团董事长兼首席执行官迈克尔戴尔出席峰会,发表主题演讲,见证集团与多个地方政府、高校、企业签署战略合作协议,并与教育部领导一起&#…

【杭州云栖】边缘计算ENS:拓展云的边界

在9月19日下午的杭州云栖大会飞天技术汇-CDN与边缘计算专场中,阿里云边缘计算团队的高级技术专家王广芳,从边缘计算的定义、场景的需求和挑战、ENS产品的价值及能力,以及典型的应用场景和案例等几个方面,详细解读了阿里云对于边缘…

Centos7 解决Docker拉取镜像慢的问题

配置加速Docker镜像源 vi /etc/docker/daemon.json在配置文件中加入 {"registry-mirrors": ["https://xxx.mirror.aliyuncs.com"] }[rootkm docker]# systemctl daemon-reload [rootkm docker]# systemctl restart dockerhttps://cr.console.aliyun.com…

你的食物变质没?用AI算法来检测一下吧

最近一条幼儿园采用过期食物的新闻引起了社会的强烈关注,对于食品安全而言,国家一直是严格要求的,尤其是对于婴幼儿食品安全的标准,部分已经超越了国际上的标准。但可能是由于无法严格地执行到每一个地方且检测周期较长&#xff0…

CAS项目部署和基础操作

文章目录一、部署cas1. 复制cas.war到webapps2. 登录页面二、CAS服务端配置2.1. 添加用户2.2. 端口修改2.3. 去除https认证一、部署cas 1. 复制cas.war到webapps 把cas.war放到tomcat的webapps下面启动Tomcat即可 2. 登录页面 二、CAS服务端配置 2.1. 添加用户 找到指定文…

基于POLARDB数据库的压测实践

POLARDB架构简介 PolarDB是阿里云ApsaraDB数据库团队研发的基于云计算架构的下一代关系型数据库(暂时仅支持MySQL,PostgreSQL正在紧锣密鼓的开发中),其最大的特色是计算节点(主要做SQL解析以及存储引擎计算的服务器)与存储节点(主要做数据块存储&#x…

戴尔科技:以技术突破创新边界!

2019戴尔科技峰会今天在北京隆重举行,戴尔科技集团与数千位全国企业级精英、合作伙伴、业内专家、媒体及分析师代表等齐聚一堂,分享了在5G、云计算、存储、数据保护、服务器等领域的最新技术产品、最佳实践经验及最新发展趋势。此次峰会还完整地展示了戴…

让你久等了!《码出高效:Java 开发手册》正式发布

可爱的Java开发者们,让你们久等了! 9月22日杭州云栖大会,众所期待的新书《码出高效:Java 开发手册》正式发布,并宣布将所有图书收益捐赠于公益项目。 此书从立意到付梓,历时超过两年,期间推翻数…

python中is和 的区别_Python中is和==的区别

"""is和 的区别"""a abcb abcprint("都是字符串-a is b--", a is b)print("都是字符串-a b--", a b)c 11d 11print("都是数字-c is d--", c is d)print("都是数字-c d--", c d)e [0, 1, 2]f …

(Docker实战) 第1篇:Centos7 环境准备和安装Docker-ce

文章目录一 、安装docker1. 卸载以前安装的docker2. 安装必要的系统工具4. 更新yum缓存5. 安装docker6. 更改docker仓库为国内仓库7. 重启docker8. 安装docker-compose一 、安装docker docker优点 快速上手新技术,把精力放在业务上而非安装和配置服务器快速搭建开发…

初入数据科学领域,你需要有七个这样的思维

假设你刚刚被一家小型软件公司聘为数据科学家。你感到欣喜若狂!你的辛勤工作和坚持不懈终于得到了回报。是时候将你的统计数据和机器学习知识付诸实践了。那么恭喜你终于加入了数据革命。 第1天到来,每个人都很高兴见到这位“数据科学家”。该公司以前从…

输入文字自动生成图片_原来Word还可以自动生成图片和图表目录!

小李接到了一个任务,将技术文档中的示意图目录做出来,让客户能根据需求快速找到操作示意图,可是这份文档有三百多张图片,不过,这可难不倒小李。说到Word目录,大多数人都知道,可以为文档的标题设…