我正在使用帶有nettcprelaybinding的服務總線。一方是OnPremise服務器,它與服務總線有恆定的連接。另一方面,Azure Web角色通過打開相應的服務總線並從服務器獲取信息來響應傳入的Web請求。Azure Servicebus繼電器性能
我擔心的是渠道創作的表現。通過服務總線建立到服務器的新連接需要幾秒鐘的時間。緩存我的ChannelFactory似乎沒有多大幫助。頻道開放後的轉播表現非常好。
關於如何提高性能的任何建議。在Azure中緩存信息只能在一定程度上完成。我需要連接到onpremise服務器。
我可以以某種方式建立到服務總線的連接池嗎?
關於更多的事情,有許多不同的onpremise服務器,所以它不只是一個連接來保持活力。
感謝您的好評。不知道60秒的限制。如果我想集中連接。什麼是這樣做的好方法?我通過以下鏈接找到了一些信息(http://code.msdn.microsoft.com/WCF-Azure-NetTCP-Keep-Alive-09f50fd9)。但是,這是多實例Azure環境中的優秀解決方案嗎?如果一個通道在一個實例上打開並且下一個客戶端在另一個實例上執行?還是負載平衡器確保使用相同的實例? – user1284390 2012-04-03 16:53:38
據我瞭解,每個實例都有自己的連接。而且,由於它們保持打開狀態,因此您需要了解單個命名空間允許的最大連接限制(2000或某些我認爲的限制)。如果它的好壞取決於你對性能和可擴展性的需求。 – BrentDaCodeMonkey 2012-04-03 18:09:15
這有點舊 - 但僅供參考,似乎大多數Azure LB現在都是基於軟件的,並且默認超時時間爲4分鐘(而現有的基於硬件的LB不超過1分鐘) - 現在可以配置。但是,目前還不清楚Service Bus客戶端庫是否自動爲您實現TCP KeepAlive,因此LB超時並不是真正的問題:https://azure.microsoft.com/en-us/blog/new-configurable-idle-timeout-for-azure-load-balancer/ – Jmoney38 2018-01-09 03:28:09