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

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程语言 > asp.net >内容正文

asp.net

ASP.NET Core服务器综述

發(fā)布時間:2023/12/4 asp.net 35 豆豆
生活随笔 收集整理的這篇文章主要介紹了 ASP.NET Core服务器综述 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

ASP.NET Core應(yīng)用通過一個進(jìn)程內(nèi)的HTTP服務(wù)器實例實現(xiàn)運行,這個服務(wù)器實例偵聽HTTP請求并將請求作為組成HttpContext的一組請求功能集暴露給我們的應(yīng)用程序。

ASP.NET Core搭載兩個服務(wù)器實現(xiàn):

  • Kestrel是一個基于libuv的跨平臺HTTP服務(wù)器,libuv是一個跨平臺的異步I/O庫

  • WebListener是一個基于HTTP.SYS內(nèi)核驅(qū)動的“Windows專用”HTTP服務(wù)器

Kestrel

Kestrel是包含在ASP.NET Core新項目模板中默認(rèn)的web服務(wù)器。如果你的應(yīng)用只接收來自內(nèi)部網(wǎng)絡(luò)的請求,你可以只使用Kestrel本身。

frameborder="0" scrolling="no" style="border-width: initial; border-style: none; width: 965px; height: 173px;">

如果你將你的應(yīng)用部署在公共網(wǎng)絡(luò)上,我們建議你使用IIS,Nginx或者Apache作為反向代理服務(wù)器。一個反向代理服務(wù)器接收來自網(wǎng)絡(luò)的HTTP請求并且在經(jīng)過一些初步處理后將請求傳遞到Kestrel服務(wù)器。過程如下圖所示。

frameborder="0" scrolling="no" style="border-width: initial; border-style: none; width: 658px; height: 167px;">

對edge deployments(從公共網(wǎng)絡(luò)上接觸到流量的部署方式)使用反向代理最重要的一個原因就是安全性。因為Kestrel相對較新,對抵御安全攻擊至今還沒有一個完整的功能補充。安全性處理包括但不限于適當(dāng)?shù)某瑫r,大小的限制,以及并發(fā)連接限制等問題。有關(guān)何時使用Kestrel與反向代理的更多信息,請參見Kestrel。

IIS with Kestrel

當(dāng)你使用IIS或者IIS Express作為對ASP.NET Core的反向代理時,ASP.NET Core應(yīng)用將運行在由該IIS工作進(jìn)程分離出的一個進(jìn)程中。在該IIS進(jìn)程中,存在著一個特殊的IIS模塊,它被用來協(xié)調(diào)反向代理的關(guān)系。它就是ASP.NET Core模塊。ASP.NET Core模塊的主要功能包括啟動ASP.NET Core應(yīng)用,當(dāng)應(yīng)用崩潰時處理重啟,向應(yīng)用傳送HTTP流量。更多的信息,請參考ASP.NET Core Module。

Nginx with Kestrel

有關(guān)如何在Linux使用Nginx作為對Kestrel的反向代理服務(wù)器的更多信息,請參考Publish to a Linux Production Environment。

Apache with Kestrel

有關(guān)如何在Linux使用Apache作為對Kestrel的反向代理服務(wù)器的更多信息,請參考Using Apache Web Server as a reverse proxy。

Jexus with Kestrel

有關(guān)如何在Linux使用Jexus作為對Kestrel的轉(zhuǎn)發(fā)服務(wù)器的更多信息,請參考?Jexus 5.8.2 正式發(fā)布為Asp.Net Core進(jìn)入生產(chǎn)環(huán)境提供平臺支持

WebListener

如果你在Windows上運行你的ASP.NET Core應(yīng)用,你可以會遇到以下場景——你既想要在公共網(wǎng)絡(luò)上部署你的應(yīng)用,又不能使用IIS,這時,WebListener會是一個可供替代的選擇。

frameborder="0" scrolling="no" style="border-width: initial; border-style: none; width: 658px; height: 167px;">

當(dāng)你只想要在內(nèi)網(wǎng)中部署你的應(yīng)用時,WebListener可以被用來代替Kestrel,特別是當(dāng)你需要Weblistener服務(wù)器支持功能中的某項而Kestrel恰好不支持的時候。

frameborder="0" scrolling="no" style="border-width: initial; border-style: none; width: 658px; height: 167px;">

對于內(nèi)部網(wǎng)絡(luò)場景,為了能達(dá)到最好的性能表現(xiàn),我們通常推薦Kestrel服務(wù)器,但是在另一些場景中,你可以想要使用某項僅WebListener支持的功能。關(guān)于WebListener功能的更多信息,請參考WebListener。

ASP.NET Core 服務(wù)器基礎(chǔ)組件說明

IApplicationBuilder在Startup類中的Configure方法暴露了IFeatureCollection類的ServerFeatures屬性。Kestrel和WebListener服務(wù)器都只提供了一個單一的功能,IServerAddressesFeature,但是不同的服務(wù)器實現(xiàn)可能會顯示額外的功能。

IServerAddressesFeature可以用來找出哪些服務(wù)器實例端口在運行時被綁定。

ServerFeatures?的注釋為“Gets the set of HTTP features the application's server providers”。

自定義服務(wù)器

你可以創(chuàng)建自定義服務(wù)器實現(xiàn)以用來替代Kestrel或者WebListener。Open Web Interface for .NET(OWIN) guide?說明了怎么去實現(xiàn)一個Nowin-based?IServer。你可以自由地實現(xiàn)你的應(yīng)用所需的功能接口,但至少必須支持IHttpRequestFeature和IHttpRequestFeature接口。

原文地址:http://www.cnblogs.com/Wddpct/p/6123644.html


.NET社區(qū)新聞,深度好文,微信中搜索dotNET跨平臺或掃描二維碼關(guān)注

創(chuàng)作挑戰(zhàn)賽新人創(chuàng)作獎勵來咯,堅持創(chuàng)作打卡瓜分現(xiàn)金大獎

總結(jié)

以上是生活随笔為你收集整理的ASP.NET Core服务器综述的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。