日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > asp.net >内容正文

asp.net

ASP.NET Core 5 在IIS,Nginx,Caddy下的性能测试

發布時間:2023/12/4 asp.net 31 豆豆
生活随笔 收集整理的這篇文章主要介紹了 ASP.NET Core 5 在IIS,Nginx,Caddy下的性能测试 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

點擊上方藍字關注“汪宇杰博客”

導語

ASP.NET Core 從 2.2 版本起,在 IIS 下可以使用 InProcess 模式提高性能,國外大神 Rick Strahl 對此有一片詳細的文章。3年過去了,現在 ASP.NET Core 已經到了 5.0 版本,不同服務器之間的性能有什么變化呢?我們來一起看一下吧。

曾經的結論

Rick Strahl 在 原文* 中測試了 Windows 下 ASP.NET Core 2.2 在 Kestrel、IIS InProcess、IIS Out of Process 中的性能,metric 為 request per second。結論是 IIS InProcess > Kestrel > IIS Out of Process。測試方法、工具和結論可以查看 Rick 的文章:

* https://weblog.west-wind.com/posts/2019/Mar/16/ASPNET-Core-Hosting-on-IIS-with-ASPNET-Core-22

今天的實驗

Rick 沒有測試相同配置的 Linux 服務器跑 ASP.NET Core 與 Windows 服務器的區別。很多朋友想知道,在 2021年跑 ASP.NET Core 5.0 到底用 Windows 還是 Linux 性能好,因此我決定用類似的方法在相同配置的服務器上重新跑一下 ASP.NET Core 5.0 在 Windows 及 Linux 上的 Request per Second 數據,方便大家參考。

測試環境

由于 Windows 10、Ubuntu Desktop 等桌面版系統并不能真實代表服務器環境,因此我均選擇服務器版系統進行測試。所有系統均為全新安裝,并打了最新 patch,并且均多喝了熱水,并重啟試試了一次。

Windows 服務器

供應商:Microsoft Azure 國際版 East Asia 數據中心

系統:Windows Server 2019

配置:2 vCPU, 4GB RAM, Premium SSD

安裝環境:IIS (啟用靜態、動態壓縮,不含 ASP.NET 3.5, 4.X),ASP.NET Core Runtime 5.0.2

Linux 服務器

供應商:Microsoft Azure 國際版 East Asia 數據中心

系統:Ubuntu Server 20.04 LTS

配置:2 vCPU, 4GB RAM, Premium SSD

安裝環境:啟用BBR,安裝?Nginx,Caddy,ASP.NET Core Runtime 5.0.2

測試工具

Rick 使用的是他自主研發的 West Wind Web Surge,但是這個工具只有 Windows 平臺,沒法滿足我們的需求,因此我使用了一個開源、跨平臺的測試工具?bombardier,該工具也曾經在微軟官方 .NET 博客上有所用到。

版本:v1.2.5

下載地址:https://github.com/codesenberg/bombardier

測試工程

一個新建的 ASP.NET Core 5.0 Web API 項目,唯一的方法是:

[ApiController]

[Route("[controller]")]

public class TestController : ControllerBase

{

? ? [HttpGet]

? ? public string Get()

? ? {

? ? ? ? return $"Test {DateTime.UtcNow}";

? ? }

}

為了簡單,本次我不測試 Json 序列化等操作,有興趣的朋友可以自行實驗。

該工程使用 Release 編譯,FDD發布,日志配置留默認,即:

"LogLevel": {

? "Default": "Information",

? "Microsoft": "Warning",

? "Microsoft.Hosting.Lifetime": "Information"

}

測試方法

分別使用 Kestrel、IIS In Process、IIS Out of Process、Nginx 反代、Caddy 反代運行測試工程,隨后使用 bombardier 訪問服務器本機的測試地址,啟用2個連接,10秒鐘DPS,預熱一輪后連續跑3輪,取 Request per Second 平均值。

注意,在理想環境下,最好不要使用性能測試工具測試localhost地址,因為操作系統本身分配調度測試工具和Web服務器之間網絡資源會有一定的影響。但是由于云端的網絡大家都懂的,所以為了盡可能排除網絡影響,我不得不訪問localhost測試。

測試結果

Windows + Kestrel

RPS 平均值:18808

Windows + IIS In Process

RPS 平均值:10089

Windows + IIS Out of Process

RPS 平均值:2820

Linux + Kestrel

RPS 平均值:10667

Linux + Nginx

RPS 平均值:3509

Linux + Caddy

RPS 平均值:3485

結論

測試結果排名(從快到慢):

  • Windows + Kestrel (18808)

  • Linux + Kestrel (10667)

  • Windows + IIS In Process (10089)

  • Linux + Nginx (3509)

  • Linux + Caddy (3485)

  • Windows + IIS Out of Process (2820)

  • 結果和 Rick 當年對 ASP.NET Core 2.2 的測試有所不同。Rick 的測試中,IIS In Process 的性能竟然能超越 Kestrel,他曾經表示意外。今天 IIS In Process 還是被 Kestrel 吊打了,這好像還挺合理的。

    但是我沒想到的是,同樣用 Kestrel,Windows 服務器的性能竟然能吊打 Linux,我表示意外,畢竟說好的 Windows 性能差,說句政治正確的話,這一定不是 Linux 的問題,很可能是 ASP.NET Core Runtime 對于 Linux 的優化沒有 Windows 版的好。

    在反代模式下,Nginx 和 Caddy 的性能基本相同,并且都能吊打 IIS Out of Process,這非常政治正確,畢竟說好的 IIS 性能差。

    當然了,光一個輸出字符串的測試,并不能代表 ASP.NET Core 5.0 及各服務器性能表現的全部,在實際項目中,影響性能的因素非常多。本次實驗的設計并不覆蓋所有場景,肯定有所紕漏,歡迎大家留言指出。

    汪宇杰博客

    Azure | .NET |?微軟 MVP

    無廣告,不賣課,做純粹的技術公眾號

    喜歡本篇內容請點個在看

    總結

    以上是生活随笔為你收集整理的ASP.NET Core 5 在IIS,Nginx,Caddy下的性能测试的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

    主站蜘蛛池模板: 日韩国产网站 | 激情偷乱人成视频在线观看 | 欧美一区二区三区在线视频 | 久久久久久久久久一级 | 亚洲小说区图片区 | 91福利在线免费观看 | 亚洲高清免费视频 | 无码人妻精品一区二区三区9厂 | 一级片网址 | 三级亚洲欧美 | 美女亚洲一区 | 91视频看 | 成人日皮视频 | 在线观看免费www | 国内免费av | 国产成人无码av在线播放dvd | 美腿丝袜一区二区三区 | 中文字幕av解说 | 中文字幕2021 | 久久美女免费视频 | 日产精品久久久一区二区 | 少妇aa| 91大神网址 | 亚洲天天av| 动漫美女被到爽 | 欧美日韩免费一区二区 | 国产在线国偷精品免费看 | 欧美日韩啪啪 | 亚洲欧美国产另类 | 午夜激情成人 | 91n在线观看 | 杨幂一区二区三区免费看视频 | 欧美资源在线观看 | 片黄在线观看 | 日本高清视频一区二区 | 丝袜ol美脚秘书在线播放 | 欧美黄色一级网站 | 亚洲日本一区二区三区 | 久久人妻少妇嫩草av蜜桃 | 四虎最新站名点击进入 | 日韩精品无码一本二本三本色 | 亚洲人成网址 | 国语av| 日韩中文av在线 | 免费大片黄在线观看视频网站 | 日本www视频在线观看 | 欧美不卡视频在线观看 | 人妻夜夜爽天天爽三区麻豆av网站 | 亚洲最大中文字幕 | 黄视频免费看在线 | 成人在线观看黄色 | 国产一级片 | 青青草原伊人网 | 午夜国产一区 | 久久小视频 | 性生活免费网站 | 国产视频精品久久 | 国产嘿咻视频 | 日韩系列在线 | 91搞搞| 免费在线a | 日本大尺度做爰呻吟舌吻 | 日韩高清不卡在线 | 亚洲视频图片小说 | 国产福利免费在线观看 | 91中文字日产乱幕4区 | 91精品网 | 精品一区二区三区免费观看 | 免费毛片看片 | 国产av不卡一区 | 9l视频自拍蝌蚪9l视频 | 嫩草视频在线观看免费 | 国产精品永久久久久久久久久 | 中文字幕一区二区人妻视频 | freesex性hd公交车上 | 欧美mv日韩mv国产网站app | 欧洲金发美女大战黑人 | 在线观看av片 | 美女啪啪动态图 | 香蕉视频国产在线观看 | 日韩精品 欧美 | 偷偷操视频 | 日韩国产片 | 国产伦精品一区二区三区千人斩 | 久久精品亚洲 | 国产精品高潮呻吟av | 欧美在线国产 | 成人av在线一区二区 | 日本人妻丰满熟妇久久久久久 | 天天插综合网 | 国产精品一二三四五区 | 青草av在线 | 色91在线| 爽爽免费视频 | 国产精品久久久久久免费播放 | 亚洲天堂久| 爱爱91| 色视频在线看 | 亚洲av无码一区二区三区人妖 |