首页
/
每日頭條
/
職場
/
面試一般問接口測試
面試一般問接口測試
更新时间:2026-01-11 12:40:14

  前言: 原作:孤獨煙。因修改不當之處歡迎指出!

  大家好,我是小架架。

  今天一大早就起來水文章了。這篇文章我個人感覺雖然含金量不是特别大,估計大家大概5分鐘左右就能看完!到底是因為什麼呢,因為平時幹貨文章分享得有點多,今天的話就一頓截圖寫幾個命令就搞定了,所以含金量不高。

  然後,我們來看一下近期有一段聊天記錄

  如下

  面試一般問接口測試(面試官之問知道你的接口)(1)

  看到這裡,不要吃驚,不要驚訝!看下文哦!

  所以,該吹的牛皮都吹出去了。所以寫個文章,自己給自己圓上!

   正文 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

  如果你的日志裡沒有我上面提到的字段。OK,那就用tomcat自帶的access log功能吧!

  因為我平時内置的tomcat比較多,指定下面兩個屬性即可

  server.tomcat.accesslog.directory 設定log的目錄,默認: logs server.tomcat.accesslog.enabled 是否開啟access log,默認: false

  此時,你訪問一次/home/index地址,會有下面這樣日志

  127.0.0.1 - - [19/Aug/2019:23:55:27 0800] "POST /home/index HTTP/1.1" 200 138

  那麼,你就可以根據日志中,該記錄的出現次數,統計index接口的QPS。

  實戰

  假設,你這會日志已經拿到手了,名字為xxx.log。

  假設日志内容如下

  //省略,都長差不多,貼其中一條就行 0:0:0:0:0:0:0:1 - - [27/Dec/2018:20:41:57 0800] "GET /mvc2/upload.do HTTP/1.1" 404 949 http-bio-8080-exec-5 43 //省略

  這個時候,你執行一串命令長下面這樣的,進行統計就行!

  cat xx.log |grep 'GET /mvc2'|cut -d ' ' -f4|uniq -c|sort -n -r

  出來等結果就是

  2 [27/Dec/2018:20:40:44 1 [27/Dec/2018:20:47:58 1 [27/Dec/2018:20:47:42 1 [27/Dec/2018:20:41:57

  然後你就知道,原來在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多大!

  然後接下來就是:

  面試一般問接口測試(面試官之問知道你的接口)(2)

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

  總結

  作者寫到此處,竟無語凝噎。深感其中之内容,話不能語。希望大家有所收獲!

  最後,文章看到這裡的各位,需要JAVA崗面試題和架構資料,請關注我哦!

  也希望大家,能夠通過我的文章去理解一些東西!能夠學而有所成,早日升職加薪!

  面試一般問接口測試(面試官之問知道你的接口)(3)

  面試一般問接口測試(面試官之問知道你的接口)(4)

  關注 轉發,私信我“學習”即可!(領取方式)

  記得一定要私信我,“學習” 關鍵字哦!

  ,

Comments
Welcome to tft每日頭條 comments! Please keep conversations courteous and on-topic. To fosterproductive and respectful conversations, you may see comments from our Community Managers.
Sign up to post
Sort by
Show More Comments
推荐阅读
買豬肉時這三種白送也不要(買豬肉時隻要喊出這)
買豬肉時這三種白送也不要(買豬肉時隻要喊出這)
  導讀:最近菜場的豬肉真的比一些蔬菜便宜,比如我們平常買得最多的五花肉,10元錢就能買上1斤,而一些黑心的肉販子,為了使肉賣得更快,會把一些不好的肉推銷給一些不會挑選肉的人,如果您買到了這種肉,不管您回家怎麼做,豬肉不僅吃着腥味比較重,肉還特别柴,所以我們在買豬肉時,一定要裝作“高手”,這樣才能防止肉販子騙您!比如一般老手才明白:在買豬肉時,隻要喊出2個詞...
2026-01-11
輔助寒冰的天賦和出裝2023年(深度剖析寒冰職業史)
輔助寒冰的天賦和出裝2023年(深度剖析寒冰職業史)
     寒冰的均衡是一個曆史遺留難題,作為英雄聯盟中最古老的英雄之一,她的技能讓她既獨特又難以駕馭。作為一個遠程擁有魔法水晶箭這樣的先手技能是強大的,但她缺乏傷害輸出技能又讓她過于依靠普攻輸出傷害,但她又沒有位移來從艱難的環境中逃脫。   S1賽季      新版的艾希已經正式和全世界玩家見面了,很多人都不确定她的未來如何。有些人可能記得,曾經中單艾希是非...
2026-01-11
詹姆斯在克利夫蘭呆了多久(詹姆斯為克利夫蘭這個城市做出了多少)
詹姆斯在克利夫蘭呆了多久(詹姆斯為克利夫蘭這個城市做出了多少)
     騎士老闆丹-吉爾伯特在2018年7月2日發表了聲明,感謝勒布朗-詹姆斯對球隊做出的貢獻。      “我們會永遠記得2016年6月19日的夜晚,詹姆斯率領騎士終結了52年的冠軍荒,為這座城市帶來了總冠軍獎杯。這是一座很多人都不敢想象有生之年可以親眼見到的總冠軍獎杯,這是一座将世世代代騎士球迷——無論是活着的人還是逝者——都聚集在一起的總冠軍獎杯。 ...
2026-01-11
催乳師是正規職業嗎(深入了解男性催乳師的工作)
催乳師是正規職業嗎(深入了解男性催乳師的工作)
  催乳師,是對專門催乳的人員的一種稱呼,在中國公布的職業目錄中,并沒有催乳師這一職業。他們通過催乳技術即中醫推拿手法,為女性解決産後無乳、乳少等症狀的專業護理人員。大多數從業者都為女性,全國隻有20-30位男性催乳師。而我們,大海撈針一般地找到了其中的4個人。   他們是男性催乳師?      王先生,有着五年産後修複經驗的男性催乳師,也常常被坊間調笑為“...
2026-01-11
怎麼制作一個月每天的工資表格(工資計算表格簡易版制作教程
怎麼制作一個月每天的工資表格(工資計算表格簡易版制作教程
  本篇文章教大家如何統計每人每日的工資表,這個表有點麻煩,因為公式多點,因為要搞三十一個單元格。   一、新建表格新建一個表格,也可以複制日報表的,把名稱改為“每日工資”   二、設置表頭一在A1單元格輸入“姓名”從A2開始建立31列單元格,把1到31的單元格列寬設置為“3.4”,設置那麼寬可以A4紙打印 。      三、設置表頭二在31後面,再新增一列...
2026-01-11
Copyright 2023-2026 - www.tftnews.com All Rights Reserved