1
我想使用Azure來託管我的Web應用程序,例如CloudService Web角色或Azure網站,在應用程序內使用SignalR連接客戶端和服務器。SignalR在Azure中的多個實例
由於我爲我的Web角色縮放了兩個實例,看起來我遇到了一個非常普遍的問題,SignalR無法找到正確的原始實例。客戶端JavaScript表示它已經啓動,但服務器中樞OnConnected
事件隨機不會引發,所以打算由客戶端調用的服務器方法也是如此,所有這些奇怪的問題都是隨機發生的。
一旦我將實例更改爲一個,所有問題都消失了。所以任何人都可以解釋當客戶端調用服務器方法時發生了什麼,爲什麼有時服務器似乎沒有正確響應?
我找到了post,Azure Service Bus能解決這個問題嗎?
謝謝,我還是不解的一兩件事:連接是否僅在原始實例中存在,或者是否存在創建爲客戶端調用的實例響應的新連接? –
連接來自客戶端...生成客戶端ID,並且該客戶端ID用於通信,直到用戶更改頁面(對於JavaScript客戶端)。該ID將用於發送到該客戶端的所有消息。如果用戶更改頁面,則會生成新的客戶端ID。 – KingOfHypocrites
因此,假設連接存儲在實例A(不使用ServiceBus),那麼客戶端調用服務器方法,實例B佔據了位置,實例B是否會創建新的集線器實例來響應請求或者根本就不能響應? –