.NET應用服務器


昨天參加Oracle的一個活動,知道了WebLogic的強大,於是對應用服務器產生了興趣。

WebLogic是一個Java EE應用服務器(與Java EE對應的另外一個技術平台就是.NET)。

Java應用服務器

為什么要應用服務器?

當你開發了一個服務端應用程序,部署到服務器之后,需要一個針對這個應用程序的執行環境,而不是將代碼放到服務器上就能運行。

你需要將Java的JVM或者.NET的CLR運行起來執行你的應用程序;如果是Web應用程序,需要接收用戶通過瀏覽器發出來的請求,並且能將處理結果返回給瀏覽器。。。

所以,服務器上僅有操作系統是不夠的,還需要相應的應用程序執行環境,最好能有提供執行環境、方便應用程序運行的專用服務器,於是應用服務器應運而生。

如果你是用Java開發的服務端應用程序,不管服務器用的是什么操作系統,只要安裝一個Java應用服務器就行了,比如這里提到的WebLogic。

如果你是用.NET開發的服務端應用程序,如果服務器用的是Windows,你需要安裝IIS,安裝.NET Framework;如果服務器用的是Linux,您需要安裝Apache,安裝Mono,安裝Apache Mono模塊。如果有跨平台的.NET應用服務器,比如叫NWeblogLogic,不管服務器用的是什么操作系統,只要安裝NWeblogLogic,就能跑.NET應用程序,是不是更幸福一些。

目前有沒有.NET應用服務器?

有!一圖勝千言,請看下圖:

Windows Server 2012有一個專門的角色叫Application Server,而要跑.NET Web應用程序,必須要安裝Application Server中的2個功能:IIS+.NET Framework 4.5。

所以,我覺得在不開源的.NET時代,真正的.NET應用服務器就一個——IIS+.NET Framework。

隨着.NET進入開源時代,你可以把IIS換成另外的Web服務器(因為有了OWIN),把.NET Framework換成.NET Core,再加上OWIN服務器,再加上WCF的替代品,將這些打包在一起,做成一個.NET應用服務器——NWebLogic。Mono也許可以往這個方向發展。

應用服務器是一個不容易理解的概念,寫出來理清一下自己的理解,不對之處,歡迎指出。

【更新】

目前我最喜歡的對Application Server的定義:

An application server exposes business logic to client applications through various protocols.

【補充】

PC Magazine對Application Server的解釋值得一看,把其中的幾張圖貼出來:

【相關鏈接】

Java vs .Net

Why does Java apps need an application server and .Net just IIS Web Server?

Application Server vs. Web Server


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM