我在相當苛刻的環境中使用WCF。我觀察到的一種行爲是我已經採取的調用冷啓動的方式。當我第一次啓動一個正在調用服務的客戶端時,第一次調用似乎有很多失敗。例如,我可以看到第一次說10個電話通過,然後接下來的200個電話全部失敗。我正在異步地與服務對話。該服務然後運行並響應正常。我可以看到,這是一個端點(可能)問題而不是操作問題,因爲多個不同的操作都會失敗。感覺就像有一個鎖,端點停止並重新設置,然後很好,但我沒有證據支持這一點。WCF冷啓動
服務器端跟蹤中沒有錯誤。我的客戶端日誌顯示很多下列情況除外:
System.ServiceModel.CommunicationException:服務器未提供有意義的回覆;這可能是由於合同不匹配,會話過早關閉或內部服務器錯誤造成的。
我考慮推行平滑算法拉平服務電話因爲往往是他們中的很多在啓動時。有沒有其他人看過類似的行爲?謝謝。
史蒂夫
編輯:該服務是在Windows服務主辦。
編輯:謝謝你的評論傢伙。
我從一開始就設置各種隊列的數字是相當高的。關於如何擴展WCF服務,我有一些很難獲得的知識。我允許2048個併發連接。我已經設置了將ListenBackLog等等
我實現了一個平滑的前1000個呼叫,並似乎得到它。這可能與JIT有關,但我對此沒有證據。目前,我將離開它,看看它是否會再次出現。
所以,我線斜坡我的電話的速度,使我不會完全意味着什麼在前60秒內鑽孔。 (前1000個電話需要60秒,然後儘可能快地運行......每秒3-4K個電話)。我確實相信我有某個配置問題。此服務不再使用,我還沒有看到此問題再次出現。 – 2009-09-09 18:31:55