2009-02-24 21 views
0

我對使用UrlRewriter.NET感興趣,並在中注意到Win2k3上的IIS 6.0,他們表示通過ASP.NET ISAPI映射所有請求。通過IIS 6.0通配符映射所有請求的性能影響是什麼?

這很好,但我想知道是否有人對此表現有好或壞的評價?我的網絡服務器會因爲這樣做而被拖垮嗎?還是會在服務器負載方面上升一小步?

我的服務器目前有空間可以呼吸,所以預計會有一些性能降低,並且可以接受。

回答

3

通配符映射確實會對性能產生巨大影響,主要是因爲它使用應用程序線程池而不是用於頁面請求處理,而是用於所有內容。假設您的平常頁面至少有10個額外的資源,如圖像,CSS和JavaScript - 然後您通過直接從池中提供靜態內容來阻止其他潛在請求。有關asp.net IIS 6線程的更多信息,請參見here

其中一種解決方法就是不能通配符映射到保存靜態內容的文件夾 - 之後您將只接收有效的應用請求,就像您在普通情況下所做的那樣。

解除映射靜態目錄的方法是創建它們中的每一個的應用程序,然後執行取消映射,之後撤消應用程序創建的事情。你可以在Steve Sanderson's blog找到更多的細節。當使用ASPNET DLL是微不足道的開銷 -

1

據此:http://mvolo.com/blogs/serverside/archive/2006/11/10/Stopping-hot_2D00_linking-with-IIS-and-ASP.NET.aspx ......我們正在談論用於服務圖像資源的30%的影響。

更新1:這將取決於您擁有的動態與靜態內容的數量。如果您有足夠的剩餘容量,則可以將其打開並密切關注性能影響。如果它開始降解太多,你可以關閉它。之後,您可以放心地進行無延伸更改。

+0

好信息弗雷迪,但我不得不給ljubomir答案,因爲他提出瞭解決方法。謝謝 – slolife 2009-02-25 05:27:35

+0

高興地幫助,贊成票讚賞:) – eglasius 2009-02-25 17:38:15

1

也許看看IIS 6.0 wildcard mapping benchmarks?

這似乎說明我在野外多年來所經歷的。如果你有足夠的流量是一個問題,那麼會有一百件事情會導致更大的瓶頸,然後它會成爲ASPNet dll

相關問題