2009-12-22 76 views
1

快速ASP.Net性能的問題...同ASP.Net應用程序 - 多IIS站點

我有,我想在IIS 6上運行對於我需要SSL證書的原因一個ASP.Net 3.5 SP1的應用在IIS中的不同站點上運行它。這是一個CMS,有些客戶需要添加他們自己的SSL證書。

1)我可以在IIS中的多個站點上的磁盤上運行同一組ASP.Net文件,還是需要鏡像它們?

2)在性能方面我需要做些什麼,例如,從每個站點有多個數據庫連接?或者他們會'彙集'?!另外,我使用Linq to SQL並使用ASP.Net的緩存緩存結果。對於每個IIS站點具有基本相同的數據的單獨緩存是否會產生開銷?此場景是否有其他性能或應用程序設計考慮事項?

3)在相同的應用程序池下運行IIS站點有什麼區別嗎?

或者沒有人有完全不同的建議?

任何指導,你可以給予非常感謝。我在這裏尋找儘可能多的不同意見和經驗,所以如果你能提供幫助,請加上答案。

乾杯, 添

+0

屬於serverfault.com – Oded 2009-12-22 11:25:14

回答

1

維護將是比較容易的方式,如果你只有一個IIS站點來管理。更有效的方法是在別的地方處理SSL問題(例如,硬件負載平衡器,內容切換器,Apache盒等),並將單個版本的應用程序運行的單個IIS實例反向代理。共享應用程序池將無濟於事(假設您將SQL Server與託管客戶端一起使用),因爲每個Web應用程序都有自己的AppDomain,因此也有自己的連接池。共享應用程序池使他們共享一個進程,但不是一個應用程序域。

我已經在廉價版本上安裝Apache,只在端口443上安裝Apache(因爲需要很多IP /證書組合),然後將Apache設置爲反向代理在同一臺機器上只偵聽端口80上的IIS(但是用於任何主機頭)。

0

我同意爲相同的應用程序運行不同的網站是沒有意義的。

您可以使用IIS管理器在網站中設置SSL端口。如果您未將IIS設置爲需要證書,則某些用戶可以使用HTTP版本而不出現證書錯誤,其他用戶可以使用SSL。