Helios:一個基於OWIN的運行於IIS上的ASP.NET Web託管架構

來源:互聯網
上載者:User

標籤:

作者 Abel Avram ,譯者 姚琪琳 發佈於 2014年3月29日 

微軟發布了Helios項目,一個輕量級的基於OWIN的運行於IIS上的Web託管架構。

Helios是微軟繼Katana之後,於去年夏天發布的另一個項目,通過提供一些可獨立安裝、使用和管理的,運行於實現了OWIN規範的Web託管服務的小工具,讓.NET Web開發人員可以繞開ASP.NET/IIS這個龐然大物。

ASP.NET的弊病之一是包含在.NET Framework中,與.NET的發布周期捆綁在一起。後者幾年才會發布一個主要版本,並且受制於特定的測試和缺陷修複的過程。為了讓Web工具的開發更加敏捷且更具響應性,ASP.NET團隊建立了大量略小的組件——ASP.NET MVC、ASP.NET Web API——它們不依賴於System.Web.dll,具有更加快速的開發週期,能夠及時地修複缺陷。不僅如此,開發人員還能將這樣的Web應用程式部署在自訂的OWIN託管服務或Katana(一個參考的OWIN實現)上。

Helios是一個運行於IIS上的Web運行時,但並不是完全成熟的微軟Web伺服器,Rick Strahl解釋道:

Helios不使用System.Web.dll,它直接掛(hook)到IIS的原生介面上,提供基本的OWIN介面和上下文語義。它完全運行於普通的ASP.NET Http運行時環境之外,繞開模組管道和預設的ASP.NET運行時處理……Helios是引導自原生IIS的、輕量級短路版本的Web託管服務。請記住,儘管IIS和ASP.NET聯絡得十分緊密,但IIS核心本身是十分輕量的,並且完全運行於原生代碼之上。只有在安裝了ASP.NET模組或處理常式之後,才會與ASP.NET產生互動,並且這種互動與原生核心和原生模組比起來是相當慢的。

Helios背後的理念是,基於IIS的成熟且功能豐富的環境(不包括遺留的ASP.NET附件),提供一個運行時。此外,如ASP.NET的安全工程師Levi Broderick所說,其目標是提供“高密度的Web伺服器”,“類比自託管多於類比Web託管的行為”,以及“減少部署Web應用時的麻煩”。但是,它不會“對現有應用100%的相容。特別是不支援.aspx和.ashx或其他ASP.NET相關的終結點”。

在開發時,Helios要求以下環境:Windows 8或Windows Server 2012,.NET Framework 4.5.1,Visual Studio 2012或2013。Broderick表示他們會在“未來的某個預覽版中放寬這一要求”,可能會允許開發人員使用Windows 7進行開發。Helios應用程式可以部署在Windows Azure或任何擁有Windows Server 2012、.NET Framework 4.5.1且完全信任託管環境中。

在效能方面,對於一個“Hello World”應用來說,Helios的輸送量比標準ASP.NET多2-3倍。但Broderick認為這並不能作為比較兩種Web解決方案的基礎,因為實際的應用程式要遠比介紹性的應用複雜得多。但在記憶體佔用方面,Helios要比System.Web表現優秀:

在絕對數字方面來看,樣本應用在Helios架構下可以達到50000個並發請求,與標準ASP.NET管道相比,能節省大約1GB的記憶體佔用。由於樣本應用設計時採用的是最小基準,因此我們有理由相信在其他複雜應用中,也能保持這個絕對數字。

需要注意的是,Broderick在評論裡提到,微軟還沒有提交Helios:

如果人們實際上不需要Helios,或者團隊解散,或者有更好的想法,或者有其他想都想不到的各種理由,我們都可能停止工作並且不會發布它。我們可不想讓它只能在Azure下工作。

開發人員在安裝了Microsoft.Owin.Host.IIS的NuGet包之後,就可以直接在Visual Studio裡建立基於Helios的ASP.NET應用程式了。

原文英文連結:Project Helios: An ASP.NET OWIN-based Web Host Running on IIS

Helios:一個基於OWIN的運行於IIS上的ASP.NET Web託管架構

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.