2012-06-20 175 views
1

我讀Wenlong Dong's blog article about the default throttling settings for WCF services in WCF 4限制設置,並有一個關於默認設置的值問題:WCF 4:默認情況下,WCF服務

MaxConcurrentSessions:默認爲100 * ProcessorCount

MaxConcurrentCalls:默認爲16 * ProcessorCount

MaxConcurrentInstances:默認爲以上兩項的總和,其中 如下與之前相同的模式。

是否ProcessorCount參考:

  1. 如果超線程已啓用的物理CPU /插槽
  2. 物理核心的所有CPU
  3. 邏輯內核的數量,數數?

感謝,

- 帕特里克

回答

4

處理器計數裝置邏輯內核。該值實際上是由提供的值System.Environment.ProcessorCount

+0

如果啓用超線程,您將看到內核* 2。例如,在我的i7機器上,ProcessorCount是8,並根據該限制設置。 – IdoFlatow

+0

我有這個值= 2. 我添加到行爲這一行 然後我打開這個設置,並讀取其他兩個值,他們是16和100 但如果它乘以處理器計數從環境,它將是32和200 爲什麼我看到默認爲16和100? 以這種方式獲得其他值 var config = WebConfigurationManager.OpenWebConfiguration(「/」); – Alexey

1
+0

從第一篇文章:「將maxConcurrentCalls,maxConcurrentSessions和maxConcurrentInstances設置爲大於16 * **的CPU數或CPU內核數**。 」。他們的例子意味着它是內核的數量,但它是物理內核還是邏輯內核? –