<span id="mktg5"></span>

<i id="mktg5"><meter id="mktg5"></meter></i>

        <label id="mktg5"><meter id="mktg5"></meter></label>
        最新文章專題視頻專題問答1問答10問答100問答1000問答2000關(guān)鍵字專題1關(guān)鍵字專題50關(guān)鍵字專題500關(guān)鍵字專題1500TAG最新視頻文章推薦1 推薦3 推薦5 推薦7 推薦9 推薦11 推薦13 推薦15 推薦17 推薦19 推薦21 推薦23 推薦25 推薦27 推薦29 推薦31 推薦33 推薦35 推薦37視頻文章20視頻文章30視頻文章40視頻文章50視頻文章60 視頻文章70視頻文章80視頻文章90視頻文章100視頻文章120視頻文章140 視頻2關(guān)鍵字專題關(guān)鍵字專題tag2tag3文章專題文章專題2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章專題3
        問答文章1 問答文章501 問答文章1001 問答文章1501 問答文章2001 問答文章2501 問答文章3001 問答文章3501 問答文章4001 問答文章4501 問答文章5001 問答文章5501 問答文章6001 問答文章6501 問答文章7001 問答文章7501 問答文章8001 問答文章8501 問答文章9001 問答文章9501
        當(dāng)前位置: 首頁 - 科技 - 知識(shí)百科 - 正文

        .net core如何利用ConcurrentTest組件對(duì)方法進(jìn)行壓力測(cè)試詳解

        來源:懂視網(wǎng) 責(zé)編:小采 時(shí)間:2020-11-27 22:34:47
        文檔

        .net core如何利用ConcurrentTest組件對(duì)方法進(jìn)行壓力測(cè)試詳解

        .net core如何利用ConcurrentTest組件對(duì)方法進(jìn)行壓力測(cè)試詳解:前言 工欲善其事,必先利其器!在編寫服務(wù)中首先要有一個(gè)好的測(cè)試工具,在dontecore下性能測(cè)試有BenchmarkDotNet,只需要簡(jiǎn)單的配置一下就可以對(duì)方法的性能進(jìn)行詳細(xì)的測(cè)試。但有時(shí)候需要對(duì)不同并發(fā)下看其處理效率和延時(shí)統(tǒng)計(jì)查看,如HTTP服務(wù)對(duì)應(yīng)著大量的
        推薦度:
        導(dǎo)讀.net core如何利用ConcurrentTest組件對(duì)方法進(jìn)行壓力測(cè)試詳解:前言 工欲善其事,必先利其器!在編寫服務(wù)中首先要有一個(gè)好的測(cè)試工具,在dontecore下性能測(cè)試有BenchmarkDotNet,只需要簡(jiǎn)單的配置一下就可以對(duì)方法的性能進(jìn)行詳細(xì)的測(cè)試。但有時(shí)候需要對(duì)不同并發(fā)下看其處理效率和延時(shí)統(tǒng)計(jì)查看,如HTTP服務(wù)對(duì)應(yīng)著大量的

        WebAPI服務(wù)

        [Route("api/[controller]")]
         [ApiController]
         public class EmployeeController : ControllerBase
         {
         [HttpGet("{count}")]
         public JsonResult Get(int count)
         {
         return new JsonResult(Employee.GetEmployees(count));
         }
         [HttpPost]
         public JsonResult Post([FromBody]Employee value)
         {
         return new JsonResult(value);
         }
         }

        以上是一個(gè)簡(jiǎn)單的dotnet core WebApi服務(wù),主要是提供了雇員獲取和添加功能。

        測(cè)試用例

        public class FastHttpClientTest
         {
         public FastHttpClientTest()
         {
         httpApiClient = new HttpApiClient(Host);
         clientApi = httpApiClient.CreateWebapi<IHttpClientApi>();
         }
         private string Host = "http://localhost:8007";
         private BeetleX.FastHttpApi.HttpApiClient httpApiClient;
         private IHttpClientApi clientApi;
         [CTestCase]
         public void AddEmployee()
         {
         clientApi.AddEmployee(Employee.GetEmployee());
         }
         [CTestCase]
         public void ListEmployees()
         {
         clientApi.ListEmployees(2);
         }
         [JsonFormater]
         public interface IHttpClientApi
         {
         [Get(Route = "api/employee/{count}")]
         List<Employee> ListEmployees(int count);
         [Post(Route = "api/employee")]
         Employee AddEmployee(Employee item);
         }
         }

        組件使用起來和BenchmarkDotNet差不多,通過CTestCase來標(biāo)記,具體測(cè)試方法通過接口定義。使用接口來描述WebApi請(qǐng)求是FastHttpApi,在這里就不過多說明。

        使用ConcurrentTest進(jìn)行壓力測(cè)試

        當(dāng)測(cè)試用例編寫完成后,就可以使用ConcurrentTest對(duì)測(cè)試用例進(jìn)行一個(gè)多線程并發(fā)測(cè)試;只需要簡(jiǎn)單運(yùn)行以下代碼即可

        CTester.RunTest<FastHttpClientTest>(10, 500000);

        以上代碼是對(duì)FastHttpClientTest的所有測(cè)試方法進(jìn)行一個(gè)測(cè)試,測(cè)試數(shù)據(jù)是使用10個(gè)線程,進(jìn)行500000萬次調(diào)用測(cè)試。

        測(cè)試報(bào)表

        在運(yùn)行過程中組件會(huì)實(shí)時(shí)顯示并發(fā)情況和區(qū)間響應(yīng)數(shù)量,最終會(huì)針對(duì)每個(gè)測(cè)試用例形成一個(gè)簡(jiǎn)要的測(cè)試結(jié)果;具體結(jié)果如下:

        ***********************************************************************
        * https://github.com/IKende/ConcurrentTest.git
        * Copyright ? ikende.com 2018 email:henryfan@msn.com
        * ServerGC:True
        ***********************************************************************
        * AddEmployee test prepping completed
        -----------------------------------------------------------------------
        * [500000/500000]|threads:[10]
        * Success:[ 0/s]|total:[ 500000][min:23448/s max:24561/s]
        * Error:[ 0/s]|total:[ 0][min:0/s max:0/s]
        -----------------------------------------------------------------------
        * 0ms-0.1ms:[ ] 0.1ms-0.5ms:[ 435,604]
        * 0.5ms-1ms:[ 59,863] 1ms-5ms:[ 4,356]
        * 5ms-10ms:[ 142] 10ms-50ms:[ 35]
        * 50ms-100ms:[ ] 100ms-1000ms:[ ]
        * 1000ms-5000ms:[ ] 5000ms-10000ms:[ ]
        ***********************************************************************

        ***********************************************************************
        * ListEmployees test prepping completed
        -----------------------------------------------------------------------
        * [500000/500000]|threads:[10]
        * Success:[ 0/s]|total:[ 500000][min:28105/s max:28829/s]
        * Error:[ 0/s]|total:[ 0][min:0/s max:0/s]
        -----------------------------------------------------------------------
        * 0ms-0.1ms:[ ] 0.1ms-0.5ms:[ 476,342]
        * 0.5ms-1ms:[ 20,641] 1ms-5ms:[ 2,922]
        * 5ms-10ms:[ 80] 10ms-50ms:[ 15]
        * 50ms-100ms:[ ] 100ms-1000ms:[ ]
        * 1000ms-5000ms:[ ] 5000ms-10000ms:[ ]
        ***********************************************************************

        組件還具備什么功能

        現(xiàn)有的ConcurrentTest的功能還相對(duì)簡(jiǎn)陋,不過應(yīng)用者還是可以根據(jù)實(shí)際的需要來制定統(tǒng)計(jì)標(biāo)簽,延時(shí)區(qū)間等相關(guān)統(tǒng)計(jì);由于組件的代碼也非常少只有幾個(gè)類,你也根據(jù)根據(jù)自己的需要來擴(kuò)展它或在https://github.com/IKende/ConcurrentTest提上相應(yīng)issues

        總結(jié)

        聲明:本網(wǎng)頁內(nèi)容旨在傳播知識(shí),若有侵權(quán)等問題請(qǐng)及時(shí)與本網(wǎng)聯(lián)系,我們將在第一時(shí)間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com

        文檔

        .net core如何利用ConcurrentTest組件對(duì)方法進(jìn)行壓力測(cè)試詳解

        .net core如何利用ConcurrentTest組件對(duì)方法進(jìn)行壓力測(cè)試詳解:前言 工欲善其事,必先利其器!在編寫服務(wù)中首先要有一個(gè)好的測(cè)試工具,在dontecore下性能測(cè)試有BenchmarkDotNet,只需要簡(jiǎn)單的配置一下就可以對(duì)方法的性能進(jìn)行詳細(xì)的測(cè)試。但有時(shí)候需要對(duì)不同并發(fā)下看其處理效率和延時(shí)統(tǒng)計(jì)查看,如HTTP服務(wù)對(duì)應(yīng)著大量的
        推薦度:
        標(biāo)簽: 詳解 net 組件
        • 熱門焦點(diǎn)

        最新推薦

        猜你喜歡

        熱門推薦

        專題
        Top
        主站蜘蛛池模板: 亚洲乱码一二三四区国产| 亚洲AV日韩AV永久无码免下载| 免费精品国自产拍在线播放| 免费人成视频在线| 亚洲人妖女同在线播放| 国语成本人片免费av无码| 亚洲午夜精品一区二区麻豆| 成年丰满熟妇午夜免费视频| 午夜亚洲国产理论片二级港台二级| 国产成人免费ā片在线观看 | 亚洲人成网站影音先锋播放| 国产精品视频白浆免费视频| 亚洲成AV人片在线观看WWW| 蜜桃视频在线观看免费视频网站WWW | 亚洲va在线va天堂va手机| 日韩av无码成人无码免费| 亚洲欧洲AV无码专区| 亚洲国产一成久久精品国产成人综合 | 国产91精品一区二区麻豆亚洲| 中文字幕在线视频免费观看| 久久亚洲精品国产精品黑人| 中文字幕免费在线观看| 亚洲 日韩 色 图网站| 国产又长又粗又爽免费视频 | 99蜜桃在线观看免费视频网站| 亚洲va乱码一区二区三区| 国产免费拔擦拔擦8x| 免费在线看污视频| 亚洲午夜国产精品| 亚洲JIZZJIZZ中国少妇中文| 国产激情免费视频在线观看| 亚洲综合久久精品无码色欲 | 亚洲免费一级视频| 精品国产亚洲AV麻豆| 亚洲成亚洲乱码一二三四区软件| 免费观看美女用震蛋喷水的视频| 亚洲久热无码av中文字幕| 亚洲精品蜜桃久久久久久| 国产一卡2卡3卡4卡无卡免费视频| 免费人成大片在线观看播放电影| 久久亚洲美女精品国产精品|