簡體   English   中英

ASP.NET開發服務器或Localhost IIS?

[英]ASP.NET Development Server or Localhost IIS?

目前,我們的開發團隊在其本地計算機上設置了他們在IIS中工作的所有網站。 我們正在考慮轉而使用內置的ASP.NET開發服務器。

這是一個好主意嗎? 使用ASP.NET dev Server有哪些優缺點? 我們應該注意哪些問題?

謝謝。

注意:在Win XP / IIS 5 / VS2005上運行

編輯:

沒有意識到它被稱為卡西尼。更多的答案Cassini v IIS在這里

ASP.NET DevService沒有什么可以做的,IIS無法做到(您可以設置斷點等,只需將VS調試器附加到ASP.NET運行時)。

但是,ASP.NET Dev WebService並不代表真正的生產環境,因此您可能會遇到在部署到生產時不期望的陷阱。

因此,我要求在本地計算機上使用IIS完成所有開發。 在IIS中配置站點並不需要太多工作。

這是一個非常好的主意。 以下是一些原因:

  • 您不再需要管理員訪問您的計算機進行Web開發(它仍然有用)。
  • 測試快速更改並繼續工作要容易得多,並且更快的迭代周期也很好
  • 它可以簡化開發環境的設置和部署。
  • XP版本的IIS具有Cassini支持的服務器版本中不存在的限制。

我所知道的唯一一個論點是,有一些非常罕見的邊緣情況,Cassini內置服務器並不完全模仿IIS,因為你使用的是奇數端口號。 我懷疑你會遇到它們,並且使用Cassini作為主要的開發環境並不妨礙開發人員也可以訪問機器上的IIS。 事實上,我首選的設置是Cassini首先用於大多數小型工作,然后部署到我的本地IIS以進行更深入的測試,然后再將代碼移回共享源存儲庫。

[編輯]
忘了重寫網址。 你確實需要IIS。 內置XP IIS的一個限制的例子是你只限於XP中的一個站點(可以有多個應用程序,但這是另一回事)。

我不得不為一個項目切換(返回)IIS,因為我需要設置一些在ASP.NET Development Web Server上無法實現的虛擬目錄

正如我在此處所述: https//stackoverflow.com/questions/103785/what-are-the-disadvantages-of-using-cassini-instead-of-iis您的開發人員需要知道Cassini是以本地用戶身份運行的,這通常是開發人員的管理員帳戶。 該開發將能夠訪問其帳戶可以訪問的任何文件或資源,這與他們在IIS 6服務器上看到的完全不同。

另一件非常重要的事情是使用IIS和vdirs而不是單獨的Cassini實例,調試Web服務要容易得多。

我知道有一點我的身份驗證在Cassini上沒有按預期工作(內置在開發服務器中)

此外,如果您需要測試ISAPI插件(例如重寫器)之類的東西,我不確定它是如何在Cassini上完成的。

不斷變化的港口對我來說也很令人不安。 此外,對於解決方案中的每個Web項目,它會激活Casini服務器的另一個實例,每個實例需要20到50 MB的內存。

我一直使用IIS,它很容易設置,而你們已經在做了......

我使用了這兩種方法,我更喜歡在本地使用IIS而不是使用內置服務器。 至少,您與最終部署設置更加一致。

我在asp.net dev服務器上遇到了以下限制:

  1. 不支持虛擬目錄。 如果您在應用程序中需要它們,IIS似乎是您唯一的選擇

  2. 經典的asp頁面不能在dev服務器上運行。 因此,如果您有一個混合Web應用程序(就像我現在在我的客戶端),IIS似乎是解決方案

  3. 如果您需要管理UI來配置設置,IIS可以更好地工作

當然,IIS要求您是本地管理員。

我注意到的另一個區別是Cassini以32位進程運行而您無法控制它,而您可以控制IIS應用程序的應用程序池以禁用32位(假設您的IIS在64位服務器上運行) )。 如果您的Web應用程序要在64位進程(如SharePoint Foundation / Server 2010)中調用API,這一點就變得尤為重要。當您使用Cassini作為調試服務器調試Web應用程序時,您將獲得“url上的Web應用程序”找不到。確認您已正確鍵入URL“在實例化對象時鍵入錯誤。 如果您使用運行在應用程序池中的應用程序進行調試,該應用程序池以64位運行,其標識允許訪問sharepoint數據庫,那么您將能夠正確調試。

在VS12中,開發服務器速度很慢,需要幾秒鍾才能下載一個2kbyte的文件。 這在vs10中沒有發生。 當你有一堆jquery文件和css這是一個真正的問題。 此外,每個頁面都會重新查詢所有css / js文件。 非常慢的回歸測試。

此外,在使用IIS 5.1時,請務必使用JetStat IIS Admin ,它會添加在IIS 5上禁用的功能,例如可以設置多個站點。

我與dev服務器遇到的主要問題是SerializationExceptions,其中包含存儲在線程上下文中的自定義安全主體。 細節在這里

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM