2010-07-09 51 views
1

我該如何測試我的asp.net web應用程序限制。用戶連接等。而且我的應用程序僅限於服務器& IIS性能還有其他什麼因素? 我該如何託管一個將被數百萬人使用的應用程序?Microsoft Asp.Net&IIS&服務器限制

+1

檢查此(應用程序池設置):http://www.codeproject.com/KB/aspnet/IIS7ASPNet.aspx http://www.codeproject.com/KB/aspnet/ExploringIIS.aspx – 2010-07-09 11:43:02

+0

@Aristos:At至少有一個:) – 2010-07-09 11:53:03

回答

3

這確實是一個複雜的問題。我會盡我所能,盡我所能來回答它,所以如果解釋似乎有人設想,請耐心等待。

在測試應用程序方面,Visual Studio中附帶了幾個插件,可以做負載測試和性能分析您的應用程序。我不知道你需要有什麼版本的VS才能獲得這些功能,但我相信它們可以從專業版版本開始。在沒有Visual Studio的情況下,有很多程序可以運行這些測試,只需在Google上搜索ASP.Net負載測試即可。與Apache一起使用的一個應用程序也適用於IIS,可用於here

就託管您的應用程序而言,這取決於您期望的用戶數量。許多人感到興奮,並說「數百萬用戶」,但實際上,對於大多數人來說,這只是其中的一小部分。如果您在縮放那麼大實話興趣,有幾個選項:

  • 在雲主機 - Amazon Web ServicesMicrosoft Azure是都擴展到幾乎無限兩種選擇,並支持ASP.Net實際上開箱即用零配置。但請注意,這些選項可能會非常昂貴,特別是如果您開始使用大量CPU時間和帶寬。但好處是,如果您的網站擁有1千名訪問者或100萬名訪問者,則不會失去性能或吞吐量。

  • 把硬件扔在它 - 在硬件上拋出問題的經過驗證的方法可能比較便宜,但不會盡快擴展。從找到一個好的hosting provider開始,並看看他們的產品。專用服務器是一個很好的開始和完全管理,但在某些時候,您將不得不建立自己的服務器並共同定位它們。負載均衡和冗餘在更高層次上變得非常重要。不管你決定做什麼

,這兩個選項可以是昂貴的。託管雲計算的成本不高,但隨着雲計算的增長可能會變得非常昂貴;專用服務器或協同定位通常具有較大的前期成本(用於設置費用和/或額外的硬件),但總體上並且從長遠角度來看是較便宜的。

我的建議是從小處着手,然後從那裏出發。共享主機雖然不具有可擴展性,但卻爲您提供了一個測試您的網站以獲取便士的極佳途徑。如果有興趣,並開始賺取一些現金,升級到專用服務器應該是無痛的。

祝你好運!

+0

非常感謝。很好的解釋。 – 2010-07-09 11:59:37

1

你要面對的第一個限制是你的。

我的意思是說。主要問題是當多個用戶同時請求一個頁面。

現在,如果您的應用程序只有一個工作池,那麼每個用戶都會等待先前完成其調用。

如果您的網頁延遲時間超過500毫秒並且需要超過3-10秒的時間才能發送,並且有2個或更多用戶同時請求相同的想法,那麼您的第二個用戶會獲得更多延遲。還有一個問題,一個用戶請求長時間的等待查詢,並停止其餘的用戶獲取任何內容,直到完成這個查詢。

第一個解決方案是用戶更努力池(Web園)當你做,你需要使你的數據的良好同步,因爲現在用戶可以改變一樣想在同一時間。

所以我的觀點是:做一個好的網頁設計,當你得到數以百萬計的用戶時,唯一的想法就是你需要錢來獲得更多的計算機並建立一個網絡農場(從網上花園升級)。

iis限制設置爲iis池限制的配置。如果你真的有太多的用戶,他們看到的是延遲得到一個頁面。如果這隻發生在一個池中,那麼用戶可能會崩潰並阻止它們獲得任何東西。如果你有很多游泳池,你可能會遇到更少的問題。更多的游泳池意味着更多的空閒內存,快速的硬盤,快速的計算機,良好的數據同步。

用戶太多的網站可能會有一些時間與網站有很好的視頻,照片或共享的東西。在這種情況下,您也可以將此媒體放置到不同的服務器並分割負載。

希望得到這個幫助。