2011-11-21 54 views
1

我最近安裝使用Visual Studio 2010中的服務託管在IIS在Windows 2008服務器上的WCF服務。我的合同暴露了一種方法。該方法的實現執行兩個快速SQL SELECT查詢,然後根據結果執行SQL INSERT查詢。換句話說,該服務很快回應。短期內,我正在尋找每秒1個請求。長期來看,它可能是每秒3個請求。WCF限制設置,以確保服務的可用性

我做了一些限制閱讀和在不同環境來了,如同MaxConcurrentCalls(默認16),MaxconcurrentSessions(默認爲10)和MaxConcurrentInstance。顯然,默認設置被認爲是保守的,並在WCF 4.0中更改爲MaxConcurrentCalls(默認100 *處理器計數),MaxconcurrentSessions(默認16 *處理器計數)。

  1. 如何找到我安裝的WCF版本,以便知道我的默認設置是什麼?
  2. 鑑於我所提供的,哪些設置是適合我的方案的信息?
+0

你曾經看着[動態IP限制](http://www.iis.net/download/DynamicIPRestrictions)?我發現它比你提到的選項更有用。您可以扼殺某些IP地址等 – bloudraak

回答

2

在代碼中,您可以使用System.Environment.Version來確定當前正在執行的CLR版本。

哪個版本執行依賴於CLR的可用,安裝的版本和當前執行的程序集可能要求一個特定版本。

鑑於信息很難說,因爲很多取決於實際的硬件,軟件,負載等,你可以做的最好的事情是建立它,然後對系統進行壓力測試以找出最佳位置。

+0

所以,如果我的WCF項目使用.NET Framework 4中,是安全的假設,我正在運行WCF 4.0然後我的默認限制設置是兩個的後面? – Thomas

+0

是,除非它們已在應用程序的配置設置中更改。 –