[TechDays2013] 使用 ASP.NET SignalR 建置即時擴展的網站服務
接著所聽到的最後一堂課室有關於即時擴展網站服務的課程
一開始是用套建去監測自己Sever的流量
藉著介紹有關於一些服務對於網路負載的分析
接著開始介紹有關於SignalR的服務
常常遇到的問題是~當一個Sever突然掛掉的時後~用戶端是否可以即時連結到另外一台伺服器
對於用SignalR Scale-Out的方式,當資料從用戶端丟往伺服器後,會將資訊再傳送到所謂的
訊息匯流(Backplane)傳送到各個Sever再一起發送訊息給所有用戶
接著用三種不同方法去擴展
第一個還是比較常用的利用原本的SQL Sever
所Demo出來的訊息推播可以看到成功的再兩個port互相傳送訊息,但也發現用SQL Sever速度真的會Delay
展示SQL Server的Model
優缺點都列出來了
優點應該就是真的大家比較常用SQL Sever~只要提供資料庫容器就可以自行維護
缺點就是速度真的比後面兩個慢
第二種方式是利用Redis
其架構方式其實與SQL Sever差不多~只不過名稱不太一樣
最後以Sevice Bus擴展SignalR~而Sevice Bus是微軟Azure的一個服務
其運行的架構也是差不多,只不過有一個重要的在於Azure的服務要在Azure裡面的Topic打開
登入Azure找尋Connection String
貼上Connection String
套件的部分都在擴充功能裡面下載安裝
個人總結
感覺這堂課學到很多即時擴充的方式
不僅只用到SQL Sever
的確用Redis快很多~Service Bus的Demo並沒有很順利
可能是跟當天的Demo網路連結並不是那麼的順
不過想像之後轉移到Azure上面也是非常的方便
有興趣的人真的可以看看這堂課的錄影
- 文章中的敘述或資訊有誤,歡迎回應指正,討論與指教是進步的原動力:)
- 若喜歡此點部落文章,歡迎各位轉載並於文末附載原文網址超連結與站名【DriftMind】