2014-03-03 42 views
0

我有一個像SO這樣的網站使用的WCF服務。這是一個通用的QnA網站,可以被世界各地的人使用,因此它的WCF服務也可以使用。我嘗試過WSHttpBinding,但是它缺乏性能,而且我的網站正在下降很多次。我知道這可能是服務器問題,但我想知道在WCF配置級別是否還有其他功能可以完成。不多,但至少可以提高一些表現。哪個WCF綁定最適合1000人同時使用的網站?

此外,我嘗試切換到NetTcpBinding的,但我研究後發現,netNamedPipeBinding是多獲得更好的性能。請告訴我,對於像SO這樣的網站,我應該使用哪種綁定?

+0

'NetTcpBinding'只能由.NET客戶端使用。 'NetNamedPipeBinding'只能在** ** **機器上使用。爲了獲得最大的互操作性,您需要堅持使用http綁定。我會考慮1)服務的限制選項和2)增加服務器的功能。我希望服務器機器的資源將是獲得改進性能的最佳位置。 – Tim

+0

@Tim如果asp.net網頁表單網站是唯一的客戶端,那麼'NetTcpBinding'會給出更好的性能或'HttpBinding'? –

+1

是的,如果唯一的客戶端是.NET,那麼'NetTcpBinding'應該稍微快一點。 – Tim

回答

1

由於您的客戶端是.NET,因此NetTcp通常會爲您提供最佳性能,因爲「WCF TCP傳輸已針對通信的兩端都使用WCF的場景進行了優化,該綁定是場景中最快的WCF綁定涉及不同機器之間的通信。「有關MSDN的更多信息,請參閱Choosing a Transport

在這同一篇文章中,TCP是推薦的傳輸方式之一時的等待時間,範圍,安全性,吞吐量和/或工具在設計的決策點。

如果您的數據存儲庫與網站位於同一臺計算機上(而不是是一種很好的設計實踐),那麼您也可以使用命名管道。

也看到這個question答案和一些進一步的信息/意見。