<cite id="ffb66"></cite><cite id="ffb66"><track id="ffb66"></track></cite>
      <legend id="ffb66"><li id="ffb66"></li></legend>
      色婷婷久,激情色播,久久久无码专区,亚洲中文字幕av,国产成人A片,av无码免费,精品久久国产,99视频精品3
      網易首頁 > 網易號 > 正文 申請入駐

      常用的模擬并發的四種方式+工具,超級實用!

      0
      分享至

      Java精選面試題(微信小程序):5000+道面試題和選擇題,真實面經,簡歷模版,包含Java基礎、并發、JVM、線程、MQ系列、Redis、Spring系列、Elasticsearch、Docker、K8s、Flink、Spark、架構設計、大廠真題等,在線隨時刷題!

      一、Postman

      Postman是一個款http請求模擬工具


      首先演示一下postman最基本的使用

      創建一個Springboot項目,測試的代碼如下:

      import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; @RestController @RequestMapping("test") public class TestConrtoller {     @GetMapping("demo")     public String testDemo() {         return "result~";     } }


      為了便于操作,一般會將

      http://127.0.0.1:8080是經常使用的地址+端口號,可以設置為環境

      點擊右上角的設置圖標


      選擇global


      輸入信息


      以后再進行測試就能這樣搞簡寫了


      知道基本使用之后,我們來看一下如何模擬并發測試



      填寫基本信息后,創建


      這個時候會創建出Concurrency的文件夾,我們可以把剛才測試的demo的例子放進這個文件夾下



      這個時候就可以在Concurrency下看到這個接口測試了


      選擇并發測試:


      這個時候彈出我們想要的框了


      點擊Run Concurrency

      你可以立馬感覺到CPU在“燃燒”,因為要記錄并打印日志,顯示的話是一條一條來的,其實測試的速度,要比你看到的打印的日志的速度快,綠色表示正常


      二、Apache Bench(AB)

      ApacheBench 是 Apache 服務器自帶的一個web壓力測試工具,簡稱ab。

      ab又是一個命令行工具,對發起負載的本機要求很低,根據ab命令可以創建很多的并發訪問線程,模擬多個訪問者同時對某一URL地址進行訪問,因此可以用來測試目標服務器的負載壓力??偟膩碚fab工具小巧簡單,上手學習較快,可以提供需要的基本性能指標,但是沒有圖形化結果,不能監控。

      使用的話,首先需要安裝Apache服務器

      網站:http://httpd.apache.org/download.cgi

      因為我的操作系統是windows10, 這里選擇File for Microsoft Windows

      Linux下的安裝是非常簡單的,這里不再演示


      選擇 ApacheHaus


      進入下載頁面 選擇適合自己電腦的版本


      文件解壓到本地文件夾下,如果不是解壓在c盤,需要設置參數,注意文件路徑最好都是英文

      關于需要設置參數,conf->httpd.conf 使用文本編輯器打開,

      需要修改的有三個地方:



      運行根目錄,修改成自己解壓到本地的路徑


      監聽端口,默認監聽端口是80,如果已被使用會報錯需要修改,如果80端口未被使用,可不修改;如果修改了監聽端口,則需要把ServerName localhost也相應改成同樣的端 口號



      DocumentRoot 測試文件存放地,且該目錄必須存在


      配置完成后,命令行cmd進入D:\softUtil\Apache24\bin目錄下

      httpd.exe  -k  install


      啟動:

      httpd.exe -k start

      測試:

      • -n:請求數

      • -c: 并發數


      三、并發模擬工具JMeter

      JMeter也是一款性能測試工具,是圖形化的。

      下載地址:傳送門 http://jmeter.apache.org/


      需要Java8+的環境


      解壓到你覺得合適的目錄下(注意最好是英文路徑)

      進入它的bin目錄下 啟動jmeter.bat即可


      使用很簡單,首先在測試計劃部分新建一個線程組




      設置好基礎信息后添加HTTP請求(基本信息設置好沒有OK哈,直接添加HTTP請求)


      填寫HTTP請求相關的內容


      之后還要添加監聽器,這里選擇是圖形結果


      再添加一個查看結果樹吧


      在運行之前打開log Viewer


      下面開始運行:


      執行成功,來感受一下結果:


      點進去


      查看結果樹


      四、代碼模擬

      這里需要用到一個類,就是CountDownLatch。

      CountDownLatch是一個計數器閉鎖,通過它可以完成類似于阻塞當前線程的功能,即:一個線程或多個線程一直等待,直到其他線程執行的操作完成。

      CountDownLatch用一個給定的計數器來初始化,該計數器的操作是原子操作,即同時只能有一個線程去操作該計數器。調用該類await方法的線程會一直處于阻塞狀態,直到其他線程調用countDown方法使當前計數器的值變為零,每次調用countDown計數器的值減1。當計數器值減至零時,所有因調用await()方法而處于等待狀態的線程就會繼續往下執行。這種現象只會出現一次,因為計數器不能被重置。

      下圖和它的方法可以體現出來:


      CountDownLatch類只提供了一個構造器:

      public CountDownLatch(int count) {  };  //參數count為計數值

      然后下面這3個方法是CountDownLatch類中最重要的方法(上圖能夠反映出來)

      public void await() throws InterruptedException { };   //調用await()方法的線程會被掛起,它會等待直到count值為0才繼續執行 public boolean await(long timeout, TimeUnit unit) throws InterruptedException { };  //和await()類似,只不過等待一定的時間后count值還沒變為0的話就會繼續執行 public void countDown() { };  //將count值減1

      下面還需要看一個類Semaphore

      Semaphore與CountDownLatch相似,不同的地方在于Semaphore的值被獲取到后是可以釋放的,并不像CountDownLatch那樣一直減到底。另外,推薦公眾 號Java精選,回復java面試,獲取面試資料,支持在線刷題。

      它也被更多地用來限制流量,類似閥門的 功能。如果限定某些資源最多有N個線程可以訪問,那么超過N個主不允許再有線程來訪問,同時當現有線程結束后,就會釋放,然后允許新的線程進來。有點類似于鎖的lock與 unlock過程。相對來說他也有兩個主要的方法:

      • 用于獲取權限的acquire(),其底層實現與CountDownLatch.countdown()類似;

      • 用于釋放權限的release(),其底層實現與acquire()是一個互逆的過程。

      通過這兩個類可以進行并發的模擬:

      測試一下:

      import lombok.extern.slf4j.Slf4j; import java.util.concurrent.*; @Slf4j publicclass CuncurrencyTest {     // 請求總數     publicstaticint clientTotal = 5000;     // 同時并發執行的線程總數     publicstaticint threadTotal = 200;     publicstaticint count = 0;     public static void main(String[] args) throws InterruptedException {         // 定義線程池         ExecutorService executorService = Executors.newCachedThreadPool();         // 定義信號量 最大的線程數量         final Semaphore semaphore = new Semaphore(threadTotal);         final CountDownLatch countDownLatch = new CountDownLatch(clientTotal);         for (int i = 0; i < clientTotal; i++) {             executorService.execute(() -> {                 try {                     semaphore.acquire();                     add();                     semaphore.release();                 } catch (InterruptedException e) {                     e.printStackTrace();                     log.error("exception",e);                 }                 countDownLatch.countDown();             });         }         countDownLatch.await();         executorService.shutdown();         log.info("count:{}",count);     }     private static void  add() {         count++;     } }

      因為count不是線程安全的,且沒有作防護措施,結果是錯的


      上面是對代碼的并發模擬的簡單形式,值得注意的是,這里提到的兩個類不是專門做并發模擬,它們的用途很廣泛,大家可以了解一下。

      版權聲明:本文為CSDN博主「沉曉」的原創文章,遵循CC 4.0 BY-SA版權協議,轉載請附上原文出處鏈接及本聲明。

      https://blog.csdn.net/qq_42322103/article/details/102736170

      公眾號“Java精選”所發表內容注明來源的,版權歸原出處所有(無法查證版權的或者未注明出處的均來自網絡,系轉載,轉載的目的在于傳遞更多信息,版權屬于原作者。如有侵權,請聯系,筆者會第一時間刪除處理!

      最近有很多人問,有沒有讀者交流群!加入方式很簡單,公眾號Java精選,回復“加群”,即可入群!

      文章有幫助的話,點在看,轉發吧!

      特別聲明:以上內容(如有圖片或視頻亦包括在內)為自媒體平臺“網易號”用戶上傳并發布,本平臺僅提供信息存儲服務。

      Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.

      相關推薦
      熱點推薦
      癌癥去世的人越來越多?醫生反復提醒:寧可打打牌,也別做這5事

      癌癥去世的人越來越多?醫生反復提醒:寧可打打牌,也別做這5事

      蜉蝣說
      2025-12-19 22:01:31
      我外交部突然發出警告,如果外媒消息屬實,中日事態將會相當嚴重

      我外交部突然發出警告,如果外媒消息屬實,中日事態將會相當嚴重

      影孖看世界
      2025-12-19 19:14:04
      寧波小洛熙尸檢報告披露,大量內幕遠超想象,法醫一句話信息量大

      寧波小洛熙尸檢報告披露,大量內幕遠超想象,法醫一句話信息量大

      博士觀察
      2025-12-20 22:59:58
      拔“刺”高手,伊薩克對熱刺打入7球為英超生涯最多

      拔“刺”高手,伊薩克對熱刺打入7球為英超生涯最多

      懂球帝
      2025-12-21 03:04:14
      羅素:愚蠢的四大特征

      羅素:愚蠢的四大特征

      尚曦讀史
      2025-12-19 09:55:05
      除了戰敗認輸,已經無路可走?洪森軍隊遭重創:柬埔寨或爆發內亂

      除了戰敗認輸,已經無路可走?洪森軍隊遭重創:柬埔寨或爆發內亂

      策前論
      2025-12-20 23:12:53
      柬埔寨電詐分子上演大逃亡,場面震撼!

      柬埔寨電詐分子上演大逃亡,場面震撼!

      環球熱點快評
      2025-12-20 07:53:18
      “邪修大法”做家務就是快!一分錢不花,家里就窗明幾凈~

      “邪修大法”做家務就是快!一分錢不花,家里就窗明幾凈~

      裝修秀
      2025-12-19 11:30:03
      馬云預言或將應驗了?未來5年,比開藥店還要暴利的4個方向

      馬云預言或將應驗了?未來5年,比開藥店還要暴利的4個方向

      百態人間
      2025-12-20 05:25:03
      向高市早苗示好不到24小時,張本底細被扒,父母的黑歷史也被翻出

      向高市早苗示好不到24小時,張本底細被扒,父母的黑歷史也被翻出

      天天熱點見聞
      2025-12-20 06:08:30
      民進黨支持者竟造謠“嫌犯是大陸籍” 蔣萬安駁斥

      民進黨支持者竟造謠“嫌犯是大陸籍” 蔣萬安駁斥

      看看新聞Knews
      2025-12-21 00:07:04
      55歲鐘麗緹中年發福太多!胖到180斤 胸大腚圓 滿身肥肉穿吊帶

      55歲鐘麗緹中年發福太多!胖到180斤 胸大腚圓 滿身肥肉穿吊帶

      廣西阿妹香香
      2025-12-20 15:58:58
      上海一對情侶戀愛時男方說“我養你”,分手后女方以此為證,拒絕返還40余萬元!測謊實驗后,法院判了

      上海一對情侶戀愛時男方說“我養你”,分手后女方以此為證,拒絕返還40余萬元!測謊實驗后,法院判了

      都市快報橙柿互動
      2025-12-20 09:35:12
      克林頓與愛潑斯坦案受害者共浴照片披露

      克林頓與愛潑斯坦案受害者共浴照片披露

      揚子晚報
      2025-12-20 11:50:57
      快扔掉!戴一天,輻射量相當于拍117次胸片

      快扔掉!戴一天,輻射量相當于拍117次胸片

      FM93浙江交通之聲
      2025-10-28 00:01:43
      同仁堂集團就南極磷蝦油事件致歉:全面開展品牌清理行動

      同仁堂集團就南極磷蝦油事件致歉:全面開展品牌清理行動

      界面新聞
      2025-12-20 09:03:27
      北京阿姨20年守茅臺股票:90萬本金,分紅326萬,成本歸零!

      北京阿姨20年守茅臺股票:90萬本金,分紅326萬,成本歸零!

      趣文說娛
      2025-12-20 18:29:20
      歐爾班抨擊歐盟向烏提供貸款,波蘭外長向歐爾班頒發列寧勛章

      歐爾班抨擊歐盟向烏提供貸款,波蘭外長向歐爾班頒發列寧勛章

      山河路口
      2025-12-20 19:17:58
      歐盟動用俄資產的方案未獲通過

      歐盟動用俄資產的方案未獲通過

      環球時報國際
      2025-12-20 09:31:53
      轉發野三坡隧道事故視頻被要求刪除,還有網友稱發生了爆炸

      轉發野三坡隧道事故視頻被要求刪除,還有網友稱發生了爆炸

      映射生活的身影
      2025-12-20 19:18:13
      2025-12-21 03:44:49
      Java精選
      Java精選
      一場永遠也演不完的戲
      1764文章數 3859關注度
      往期回顧 全部

      科技要聞

      許四清:具身智能的"ChatGPT時刻"還未到來

      頭條要聞

      臺北致4人身亡嫌犯被指是"大陸籍" 蔣萬安回應

      頭條要聞

      臺北致4人身亡嫌犯被指是"大陸籍" 蔣萬安回應

      體育要聞

      我開了20年大巴,現在是一名西甲主帥

      娛樂要聞

      2026央視跨年晚會陣容曝光,豪華陣仗

      財經要聞

      求解“地方財政困難”

      汽車要聞

      嵐圖推進L3量產測試 已完成11萬公里實際道路驗證

      態度原創

      本地
      數碼
      房產
      公開課
      軍事航空

      本地新聞

      云游安徽|訪黃山云海古村,讀一城山水風骨

      數碼要聞

      一屏多用:華為Mate X7 / XTs折疊屏手機“變身”智能手卡

      房產要聞

      廣州有態度,一座國際化社區給出的城市答案

      公開課

      李玫瑾:為什么性格比能力更重要?

      軍事要聞

      澤連斯基:前線局勢愈發艱難

      無障礙瀏覽 進入關懷版 主站蜘蛛池模板: 久久无码电影| 影音先锋成人| 国产免费无遮挡吸奶头视频| 国产精品人妻一区二区高 | 临泉县| 成熟了的熟妇毛茸茸| 国产乱妇无码大片在线观看| 午夜一区二区国产好的精华液| 丰满人妻被黑人猛烈进入| 欧美老熟妇色XXXXX性| 河北省| 嫖妓丰满肥熟妇在线精品| 精品无码久久久久久国产| 2019香蕉在线观看直播视频| 久久久久久亚洲AV成人无码激情| 中文字幕变态另类| 疯狂做受xxxx高潮欧美日本 | 免费福利视频一区二区三区高清| 中文字幕av无码不卡免费| 一个人看的免费高清www视频 | 又黄又爽又色视频免费| www.色色资源| 国产精品久久久久无码网站| 亚洲精品国产suv一区88| 玉屏| 亚洲区综合区小说区激情区| 国产精品色哟哟| 国产9区| 欧美中文字幕人妻系列| 依依成人精品视频在线观看| 97人妻成人免费视频| 国产sm重味一区二区三区| 夜夜欢视频| 无码伊人| 丰满岳乱妇一区二区三区| 精品无码一区二区三区在线| 7777精品久久久大香线蕉| 人妻?无码?中出| 湖北省| 精品国产一区二区三区四区| 肉大捧一进一出免费视频|