[英]ASP.NET WebAPI Self Hosting on Azure: feature loss by avoiding IIS?
ASP.NET WebAPI 可以托管在 IIS 中(作為 Web 角色)或自托管(作為輔助角色)
var server = new HttpSelfHostServer(config);
server.OpenAsync().Wait();
以上讓我想起了 Node.JS。 無論如何,我試圖列出這兩種方法之間的所有技術權衡。 我不是在尋求關於您更喜歡哪些權衡的意見——只是從技術角度來看這些權衡是什么。 現在,我發現在我們真實世界的 API 調用(=Azure SQL + API 調用背后的繁重數字運算)的自托管模式下,每個 API 調用的響應時間快了 8%。 但是,我擔心拋棄 IIS 會在將來再次咬我們。
那么,在采用 WebAPI 自托管路線時避免 IIS 會帶來哪些主要的權衡或功能丟失?
這實際上取決於您的應用程序。 您將不得不重新編寫您需要的每個功能。 Node.js 提供了執行 Nginx 服務器沒有的那些東西(Express)的模塊......除了(事件循環異步架構)這就是它更快的原因。
我知道這不是您的問題的一部分,但是您提到了 8% 的性能增益……該增益是因為您沒有涉及 IIS 管道。 當您編寫自己的代碼來模擬您失去的 IIS 功能時,您最終將失去該性能
您是否嘗試過 Windows 2008 R2/IIS 8? 這包括對 IIS 7.x 的“免費”性能提升: http : //blog.bitdiff.com/2012/06/performance-comparison-iis-75-and-iis-8.html
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.