精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

.Net Crank性能測試入門

開發 后端
Crank 是微軟新出的一個性能測試框架,集成了多種基準測試工具,如bombardier、wrk等。Crank通過統一的配置,可以轉換成不同基準測試工具命令進行測試。可參考Bombardier Job實現。

[[437057]]

Crank 是微軟新出的一個性能測試框架,集成了多種基準測試工具,如bombardier、wrk等。

Crank通過統一的配置,可以轉換成不同基準測試工具命令進行測試。可參考Bombardier Job實現。

安裝Crank

運行如下兩個命令分別安裝Crank的cli(Controller)和Agent。

  1. dotnet tool update Microsoft.Crank.Controller --version "0.2.0-*" --global 
  2.  
  3. dotnet tool update Microsoft.Crank.Agent--version "0.2.0-*" --global 

需要.Net SDK 5.0環境

安裝完成后執行命令crank,會打印出如下可以配置的參數和介紹,或者github查看相關參數介紹。

  1. PS C:\Users\Stack\Desktop> crank 
  2. Crank Benchmarks Controller 
  3.  
  4. The Crank controller orchestrates benchmark jobs on Crank agents. 
  5.  
  6. Usage: Crank [command] [options] 
  7.  
  8. Options: 
  9.   -?|-h|--help         Show help information 
  10.   -c|--config          Configuration file or url 
  11.   -s|--scenario        Scenario to execute 
  12.   -j|--job             Name of job to define 
  13.   --profile            Profile name 
  14.   --script             Execute a named script available in the configuration files. Can be used multiple times. 
  15.   -j|--json            Saves the results as json in the specified file. 
  16.   --csv                Saves the results as csv in the specified file. 
  17.   --compare            An optional filename to compare the results to. Can be used multiple times. 
  18.   --variable           Variable 
  19.   --sql                Connection string of the SQL Server Database to store results in 
  20.   --table              Table name of the SQL Database to store results in 
  21.   --session            A logical identifier to group related jobs. 
  22.   --description        A string describing the job. 
  23.   -p|--property        Some custom key/value that will be added to the results, .e.g. --property arch=arm --property 
  24.                        os=linux 

執行crank-agent,啟動基準測試所需的代理服務。github查看相關參數介紹。

  1. PS C:\Users\Stack\Desktop> crank-agent 
  2. Hosting environment: Production 
  3. Content root path: C:\Users\Stack\.dotnet\tools\.store\microsoft.crank.agent\0.2.0-alpha.21567.1\microsoft.crank.agent\0.2.0-alpha.21567.1\tools\net5.0\any
  4. Now listening on: http://[::]:5010 

創建Crank配置文件

配置文件參考官方hello.benchmarks.yml示例

示例文件中引入了bombardier.yml,由于大環境對githubusercontent.com域名不太友好,可以考慮將bombardier.yml下載到本地,imports引入本地路徑或者直接將文件內容加入到新建的配置文件。

  1. imports: 
  2.   -https://raw.githubusercontent.com/dotnet/crank/main/src/Microsoft.Crank.Jobs.Bombardier/bombardier.yml 

生產中使用推薦imports文件的方式,crank配置文件中做少量配置就可以完成基準測試,并且可以引入不同的Microsoft.Crank.Jobs.XXX/XXX.yml,基于不同的基準測試工具進行測試。

其他測試工具配置文件都在https://github.com/dotnet/crank/blob/main/src/Microsoft.Crank.XXX下。

  1. variables: 
  2.   headers: 
  3.     none: '' 
  4.     plaintext: '--header "Accept: text/plain,text/html;q=0.9,application/xhtml+xml;q=0.9,application/xml;q=0.8,*/*;q=0.7" --header "Connection: keep-alive"' 
  5.     html: '--header "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8" --header "Connection: keep-alive"' 
  6.     json: '--header "Accept: application/json,text/html;q=0.9,application/xhtml+xml;q=0.9,application/xml;q=0.8,*/*;q=0.7" --header "Connection: keep-alive"' 
  7.     connectionclose: '--header "Connection: close"' 
  8.   presetHeaders: none 
  9.  
  10. jobs: 
  11.   bombardier: 
  12.     source: 
  13.       repository: https://github.com/dotnet/crank.git 
  14.       branchOrCommit: main 
  15.       project: src/Microsoft.Crank.Jobs.Bombardier/Microsoft.Crank.Jobs.Bombardier.csproj 
  16.       sourceKey: bombardier 
  17.       noBuild: true 
  18.     readyStateText: Bombardier Client 
  19.     waitForExit: true 
  20.     variables: 
  21.       connections: 256 #設置連接數 
  22.       warmup: 15 #設置測試預熱次數 
  23.       duration: 15 #設置測試時間 
  24.       requests: 0 #設置測試請求實例數 
  25.       rate: 0 #設置每秒請求頻率 
  26.       transport: fasthttp # | http1 | http2  設置使用golang的fasthttp庫發送http請求 
  27.       serverScheme: http 
  28.       serverAddress: localhost 
  29.       serverPort: 5000 
  30.       path:  
  31.       bodyFile: # path or url for a file to use as the body content 
  32.       verb: # GET when nothing is specified 
  33.       customHeaders: [ ] # list of headers with the format: '<name1>: <value1>', e.g. [ 'content-type: application/json' ] 
  34.     arguments: "-c {{connections}} -w {{warmup}} -d {{duration}} -n {{requests}} --insecure -l {% if rate != 0 %} --rate {{ rate }} {% endif %} {% if transport %} --{{ transport}} {% endif %} {{headers[presetHeaders]}} {% for h in customHeaders %}{% assign s = h | split : ':' %}--header \"{{ s[0] }}: {{ s[1] | strip }}\" {% endfor %} {% if serverUri == blank or serverUri == empty %} {{serverScheme}}://{{serverAddress}}:{{serverPort}}{{path}} {% else %} {{serverUri}}:{{serverPort}}{{path}} {% endif %} {% if bodyFile != blank and bodyFile != empty %} -f {{bodyFile}} {% endif %}  {% if verb != blank and verb != empty %} -m {{verb}} {% endif %}" 
  35.     onConfigure:  
  36.       # - job.timeout = Number(job.variables.duration) + Number(job.variables.warmup) + 10; 
  37.  
  38.   server: 
  39.     source: #指定需要測試的項目,本文直接使用本地路徑 
  40.       localFolder: . 
  41.       project: crank_demo.csproj 
  42.     readyStateText: Application started. 
  43.     # source: 指定測試項目的遠程倉庫地址,并通過branchOrCommit指定分支 
  44.     #   repository: https://github.com/dotnet/crank 
  45.     #   branchOrCommit: main 
  46.     #   project: samples/hello/hello.csproj 
  47.     # readyStateText: Application started. 
  48.  
  49. scenarios: #配置基準測試場景 
  50.   crank_demo: #定義方案名,執行crank命令時指定該名稱 
  51.     application:  
  52.       job: server # 指定測試項目為上面定義的server 
  53.     load
  54.       job: bombardier # 指定測試工具bombardier 
  55.       variables: 
  56.         serverPort: 5000 #配置http服務端口 
  57.         path: / #配置http服務地址 
  58.  
  59. profiles: 
  60.   local
  61.     variables: 
  62.       serverAddress: localhost 
  63.     jobs:  
  64.       application: 
  65.         endpoints:  
  66.           - http://localhost:5010 
  67.       load
  68.         endpoints:  
  69.           - http://localhost:5010 

啟動Crank-Agent

啟動agent后執行crank,會有一個如下安裝sdk的動作

  1. [09:29:05.261] Runtime: 6.0.0 (Current
  2. [09:29:05.262] SDK: 6.0.100 (Current
  3. [09:29:05.263] ASP.NET: 6.0.0 (Current
  4. [09:29:05.265] Creating custom global.json 
  5. [09:29:05.266] Desktop: 6.0.0 (Current
  6. [09:29:05.266] Installing SDK '6.0.100' ... 

所以啟動agent時多指定一個dotnethome參數,避免重復安裝sdk。

  1. crank-agent --dotnethome 'C:\Program Files\dotnet' 

啟動Crank

crank --config .\demo.benchmarks.yml --scenario crank_demo --profile local

--scenario crank_demo: 指定定義的測試場景

--profile local :設置輸出結果到本地,即控制臺輸出

可以通過參數指定結果輸出到本地json文件(--output results.json )或者數據庫(--sql [connection-string] --table [table-name])

結果輸出

這里省略壓測期間的日志輸出,直接列出結果。

  1. | application           |               | 
  2. --------------------- | ------------- | 
  3. | CPU Usage (%)         | 56            | 
  4. | Cores usage (%)       | 447           | 
  5. | Working Set (MB)      | 140           | 
  6. | Private Memory (MB)   | 157           | 
  7. | Build Time (ms)       | 7,232         | 
  8. | Start Time (ms)       | 501           | 
  9. | Published Size (KB)   | 91,292        | 
  10. | .NET Core SDK Version | 6.0.100       | 
  11. | ASP.NET Core Version  | 6.0.0+ae1a6cb | 
  12. | .NET Runtime Version  | 6.0.0+4822e3c | 
  13.  
  14.  
  15. load                  |                |  
  16. --------------------- | -------------- | 
  17. | CPU Usage (%)         | 46             |  
  18. | Cores usage (%)       | 370            |  
  19. | Working Set (MB)      | 29             | 
  20. | Private Memory (MB)   | 30             | 
  21. | Build Time (ms)       | 11,891         | 
  22. | Start Time (ms)       | 226            | 
  23. | Published Size (KB)   | 68,228         | 
  24. | .NET Core SDK Version | 3.1.415        | 
  25. | ASP.NET Core Version  | 3.1.21+458d974 | 
  26. | .NET Runtime Version  | 3.1.21+df8abc0 | 
  27. First Request (ms)    | 185            | 
  28. | Requests              | 912,005        | 
  29. | Bad responses         | 0              | 
  30. | Mean latency (us)     | 4,207          | 
  31. Max latency (us)      | 138,999        | 
  32. | Requests/sec          | 60,305         | 
  33. | Requests/sec (max)    | 128,523        | 

更多

crank readme: https://github.com/dotnet/crank/blob/main/docs/README.md

Benchmarks crank為Benchmarks重構版本

 

本文示例代碼: https://github.com/MayueCif/crank_demo

 

責任編輯:武曉燕 來源: 分布式應用運行時
相關推薦

2022-11-24 09:01:26

HTTPHertz架構

2011-07-19 09:35:46

.Net

2021-05-07 07:27:51

Python測試工具

2009-11-12 09:25:21

ADO.NET連接池

2009-12-30 11:03:26

ADO.Net性能

2010-07-13 09:10:26

.NETMonoJava

2023-08-31 08:36:52

.NET性能測試開源

2011-03-15 16:34:36

Iptables性能

2009-09-18 13:05:59

.NET CLR

2010-12-31 13:30:12

2011-06-08 16:59:04

性能測試載測試壓力測試

2020-05-18 07:00:00

性能測試壓力測試負載測試

2019-08-21 10:53:29

.NET性能優化

2009-09-22 17:41:07

Hibernate性能

2011-12-15 09:55:47

javanio

2014-07-28 09:52:14

PythonPython性能

2009-09-16 09:37:47

ASP.NET和PHP

2009-06-29 10:19:42

.NET Micro性能優化

2010-01-05 13:56:37

2009-09-04 17:27:46

C# DES
點贊
收藏

51CTO技術棧公眾號

久久中文字幕无码| 18禁免费无码无遮挡不卡网站| 伊人网av在线| 欧美日韩中文| 日韩成人中文字幕| 欧美伦理片在线观看| www久久日com| 久久午夜国产精品| 成人性生交大片免费看小说 | 在线观看一二三区| 欧美在线亚洲| 亚洲日韩中文字幕在线播放| 国产欧美日韩视频| 欧美三级日本三级| 一区二区三区日本久久久| 欧美精品 国产精品| 日韩人妻无码精品久久久不卡| 国产主播福利在线| 懂色中文一区二区在线播放| 国产精品一区=区| 天天操天天射天天爽| 日韩视频在线观看| 日韩精品在线观看一区| 国产一级片中文字幕| 电影一区二区三区| 亚洲国产三级在线| 椎名由奈jux491在线播放 | 国产麻豆91精品| 国产精品91免费在线| 亚洲精品在线观看av| 99国产**精品****| 亚洲天堂av图片| 中文字幕一区二区三区乱码不卡| 日韩电影精品| 欧美在线免费视屏| 欧美 日韩精品| 高h视频在线播放| 亚洲欧美国产毛片在线| 水蜜桃一区二区三区| 日本免费不卡| 91视频国产资源| 精品高清视频| 日韩性xxxx| 粉嫩av一区二区三区| 5g国产欧美日韩视频| 国产精品伦一区二区三区| 免费观看30秒视频久久| 国产精品99久久久久久久久久久久| 日韩免费一二三区| 亚洲大胆av| 国内精品小视频在线观看| 国产a免费视频| 欧美在线影院| 久久久久国产精品www| 欧美日韩在线观看免费| 欧美激情自拍| 欧美激情网友自拍| 国产一级二级三级| 亚洲午夜视频| 国模极品一区二区三区| 日韩成年人视频| 亚洲少妇在线| 热99在线视频| 久久一区二区三区视频| 国产精品腿扒开做爽爽爽挤奶网站| 91国内产香蕉| 精品免费囯产一区二区三区| 久久久久一区| 国产精品伦子伦免费视频| 中文字幕 日韩有码| 久久99热99| 亚洲最大成人在线| 国产综合在线播放| 久久久久亚洲蜜桃| 水蜜桃亚洲精品| 国产在线更新| 午夜视频一区二区| 成人精品视频一区二区| 精品福利在线| 欧美sm美女调教| 玖玖爱在线观看| 久久麻豆精品| 久久久亚洲网站| 69亚洲精品久久久蜜桃小说| 三级久久三级久久| 成人免费视频97| 黄色一级大片在线免费看国产| 91亚洲国产成人精品一区二三| 久久综合伊人77777麻豆| 黄色av网址在线免费观看| 国产精品国产馆在线真实露脸| 国产一区二区三区乱码| 黑人巨大亚洲一区二区久| 欧美日韩国产一级片| 久久久久无码国产精品一区李宗瑞 | 男人添女人荫蒂国产| 亚洲免费毛片| 欧美成人精品xxx| 无码人妻久久一区二区三区不卡| 久草精品在线观看| 久久综合九色综合网站| jizz性欧美| 色综合久久中文综合久久97| 婷婷激情综合五月天| 欧美交a欧美精品喷水| 精品国产欧美一区二区三区成人 | 欧美成人日本| 国产成人在线精品| 亚洲精品综合久久| 亚洲国产电影在线观看| 欧美视频在线观看网站| 日韩欧美三区| 亚洲欧美中文另类| 精品深夜av无码一区二区老年| 日本vs亚洲vs韩国一区三区 | 亚洲精品成人电影| 亚洲国产电影在线观看| www.com毛片| 最新国产一区二区| 日韩专区在线观看| 五月婷婷激情视频| 成人国产精品视频| 色撸撸在线观看| 国产精品一区二区免费福利视频| 亚洲精品按摩视频| 久青草视频在线观看| 久色婷婷小香蕉久久| 久久精品99久久| 国产天堂在线播放视频| 欧美一区二区三区视频在线观看| 欧美激情视频二区| 乱人伦精品视频在线观看| 国内精品国语自产拍在线观看| av在线播放国产| 欧美日韩精品综合在线| 色一情一交一乱一区二区三区 | 亚洲乱色熟女一区二区三区| 国产精品久线观看视频| 99草草国产熟女视频在线| 神马久久av| 91国自产精品中文字幕亚洲| 亚洲国产精彩视频| 亚洲永久精品大片| 性生活在线视频| 欧美a级在线| 5g国产欧美日韩视频| 成人黄视频在线观看| 欧美日韩国产精品自在自线| 国产1区2区在线观看| 日韩高清不卡一区二区| 日韩福利视频| julia一区二区三区中文字幕| 亚洲视频在线视频| 影音先锋国产在线| 国产精品久久777777| 久久婷五月综合| 亚洲91视频| 97碰碰视频| 岛国av免费在线观看| 亚洲免费小视频| 久久精品99北条麻妃| 国产精品污网站| 久久久精品视频国产| 欧美精品一卡| 国产在线欧美日韩| 欧美91看片特黄aaaa| 原创国产精品91| 国产精品久久久久久免费免熟| 日韩码欧中文字| 亚洲精品一二三四| 亚洲一区二区三区四区电影| 欧美精品做受xxx性少妇| 亚洲欧美另类综合| 欧美午夜片在线免费观看| 97人妻精品一区二区免费| 日av在线不卡| 国产免费内射又粗又爽密桃视频 | 欧美一区亚洲二区| 国产成人精品一区二区三区免费| www.国产精品一二区| 精品久久国产视频| 欧美天堂在线观看| 精品女人久久久| 福利视频网站一区二区三区| 亚洲午夜无码av毛片久久| 精品久久91| www日韩av| 欧美黑人疯狂性受xxxxx野外| 丝袜亚洲另类欧美重口| 亚洲黄色在线免费观看| 日本道免费精品一区二区三区| 免费成人美女女在线观看| 国产电影一区在线| 欧美xxxxx在线视频| 欧美一区二区三区另类| 久久久久久久久久久久久久一区| 精品国产黄a∨片高清在线| 高清视频欧美一级| 尤物网在线观看| 亚洲国产91色在线| 中文字幕第一页在线播放| 亚洲第一av色| www.99re6| 久久久精品免费网站| 又黄又爽又色的视频| 日韩av午夜在线观看| 天天做天天躁天天躁| 第一会所sis001亚洲| 激情小说网站亚洲综合网| 精品一区二区三区四区五区 | 欧美午夜网站| 国产精品成人观看视频国产奇米| 日韩三级电影视频| 中文字幕亚洲综合久久筱田步美| 少妇喷水在线观看| 制服丝袜av成人在线看| 中文字幕一区在线播放| 亚洲狠狠爱一区二区三区| 欧美爱爱免费视频| 欧美国产激情二区三区 | 婷婷综合电影| 不卡视频一区二区| 国产精品日本一区二区三区在线| 国产97色在线|日韩| 天堂在线中文网官网| 欧美乱大交xxxxx另类电影| 在线看av的网址| 国产午夜精品视频| 牛牛热在线视频| 日韩av在线一区二区| 国产后入清纯学生妹| 欧美区在线观看| 中文字字幕在线观看| 在线观看日韩av先锋影音电影院| 日韩av大片在线观看| 婷婷成人综合网| 日韩欧美中文字幕一区二区| 亚洲免费观看视频| 黄色片子在线观看| 中文字幕在线不卡国产视频| 极品尤物一区二区| 国产精品欧美一区二区三区| 色噜噜日韩精品欧美一区二区| 91麻豆免费看| 一区二区黄色片| 久久久噜噜噜久久人人看 | 中文字幕一区二区三| 中文字幕第69页| 国产精品久久久久久福利一牛影视| 日韩一区二区a片免费观看| 久久综合九色综合欧美亚洲| 人妻精品久久久久中文字幕| 久久综合999| 成人免费毛片糖心| 日本一区二区三区四区| 日本猛少妇色xxxxx免费网站| 中文字幕精品一区二区三区精品| 免费看91的网站| 国产精品免费aⅴ片在线观看| 在线日韩国产网站| 亚洲精品久久嫩草网站秘色| 免费在线观看国产精品| 亚洲高清三级视频| 亚洲免费激情视频| 色婷婷av一区二区三区gif| 免费一级a毛片| 777久久久精品| 亚洲第一页在线观看| 亚洲国产成人爱av在线播放| 欧美午夜黄色| www.日韩.com| 欧美理论电影| 日韩av男人的天堂| 欧美高清免费| 精品国产一区二区三区四区vr | 亚洲欧美制服丝袜| 欧美激情办公室videoshd| 欧美日韩国产成人在线观看| 女人让男人操自己视频在线观看| 国产999精品| 麻豆国产一区二区三区四区| 国产欧美一区二区三区不卡高清| 久久不见久久见免费视频7| 在线国产99| 99视频精品| 最近中文字幕一区二区| 国产成人亚洲综合a∨婷婷| 添女人荫蒂视频| 国产精品久久久久久久久搜平片| 久久久久久久伊人| 精品视频1区2区| 欧美 日韩 国产 成人 在线 91| 亚洲天堂男人的天堂| 日皮视频在线观看| 国产精品久久久久99| av成人综合| 亚洲国产一区二区在线| 亚洲精品三级| 色一情一区二区三区| av不卡免费在线观看| 日韩精品一区二区亚洲av性色| 五月激情综合色| 国产喷水吹潮视频www| 亚洲欧美在线看| 国产第一页在线视频| 国产精品中文字幕久久久| 久久精品色综合| 欧美美女黄色网| 日韩黄色片在线观看| 黄色性视频网站| 亚洲天堂成人在线观看| 欧美超碰在线观看| 精品国产髙清在线看国产毛片| 777电影在线观看| 国产91对白在线播放| 视频亚洲一区二区| 宅男av一区二区三区| 久久综合影视| 三级黄色片网站| 一区二区在线免费观看| 一级黄色录像大片| 亚洲性生活视频| 中文字幕在线看片| 精品国产乱码久久久久久久软件| 欧美1区2区3区| www.cao超碰| 中文字幕不卡三区| 国产午夜无码视频在线观看| 精品亚洲国产视频| а√天堂8资源在线| 高清国语自产拍免费一区二区三区| 911久久香蕉国产线看观看| 青青青国产在线视频| 久久男人中文字幕资源站| 国产精品第72页| 亚洲福利视频在线| missav|免费高清av在线看| 成人在线资源网址| 女主播福利一区| 日本女人性视频| 一区二区三区.www| 亚洲AV无码精品色毛片浪潮| 久久这里有精品| 国内不卡的一区二区三区中文字幕| 一区二区视频在线播放| 九色综合国产一区二区三区| 男人的午夜天堂| 欧美一区二区三区小说| 99在线播放| 不卡一卡2卡3卡4卡精品在| 欧美激情四色| 久久久久亚洲AV成人网人人小说| 亚洲综合清纯丝袜自拍| 内射无码专区久久亚洲| 97不卡在线视频| 国产免费久久| 日本在线播放一区二区| 亚洲卡通动漫在线| 亚洲av永久无码国产精品久久| 欧美激情女人20p| 欧洲vs亚洲vs国产| www.欧美日本| 亚洲欧美日韩精品久久久久| www.久久色| 97香蕉超级碰碰久久免费的优势| 国产成人黄色| 日韩欧美国产片| 怡红院av一区二区三区| 手机看片一区二区三区| 国产成人欧美在线观看| 久久五月天小说| 涩视频在线观看| 在线免费观看日本一区| 久做在线视频免费观看| 不卡一区二区三区四区五区| 国产精品普通话对白| 国产18无套直看片| 日韩欧美精品在线| videos性欧美另类高清| 伊甸园精品99久久久久久| 国产成人精品免费网站| 欧美 日韩 精品| 日韩视频免费在线观看| 久久精品亚洲成在人线av网址| 亚洲一区二区蜜桃| 亚洲黄色小视频| 免费在线黄色影片| 成人午夜黄色影院| 国产欧美91| 久久精品亚洲a| 日韩精品极品视频免费观看| 欧美黑粗硬大| 成熟了的熟妇毛茸茸| 中文字幕中文字幕一区二区| 婷婷五月综合久久中文字幕| 国产精品一区久久久| 亚洲美女啪啪| 国产免费无码一区二区视频| 亚洲人成电影网站| 高清精品视频|