後WCF服務響應慢我有使用basicHttpBinding的運行在天青實例2個端點的WCF服務。當服務第一次被調用時,響應(這是預期的)需要13-16秒,隨後的請求在150ms和1000ms之間是足夠的,這取決於請求類型(我使用soapUI進行測試)。不到5分鐘空轉(4.0在Azure)
但是,如果我不發送任何請求幾分鐘(小於4或5分鐘)服務實例不會出現,因爲它是作爲長期服用截至13日的第一次請求將得到重用+秒。
我已經試過「InstanceContextMode = InstanceContextMode.Single」在我ServiceBehavior(S),但沒有解決問題。
在跟蹤中,我可以看到線程ID變化只要服務響應緩慢。
我也從記錄時的Application_BeginRequest被擊中的方法開始的時間,這似乎是在這些「慢」稱最大延遲客戶端被調用。 我有一些相當大的類代表業務接口,並且使用實體框架來運行在Azure虛擬機上運行的MySQL數據庫。 (雖然我不認爲這必然是一個Azure問題)。
緩慢的反應是相同的我是否調用連接到數據庫操作或只是一個簡單的「Hello World」響應一個複雜的消息類型。
即使該服務的新實例應該採取只要一個IIS重新啓動或應用程序池回收後的初始負載要求?
會做包裝使用靜態類幫助一些神奇? (我不想)。
建成了C#4.0/VS2010專業
謝謝Sandrino。我確實已經啓用了跟蹤,但我沒有嘗試使用TraceInformation - 我正在使用靜態方法寫入數據庫中的調試表。這就是當你意識到調試方法掩蓋了一個問題 - 它正在放慢我的'Hello World'測試,因爲它正在進行數據庫調用。 所以主要的問題看起來像MySQL閒置。我已經在MySQL連接字符串中設置了最小池大小= 1,並且現在已經將對於任何DB支持的消息在從13-15秒空閒到大約4或5秒之後的響應減少 – AnthonyC