SignalR のデモがちょっとかっこいい

執筆日時:


Video streaming by Ustream

イベントの方向とタイトル的に ASP.NET 全体を少しずつ喋る形にしたのですが、SignalR だけで 45 分話してもいけたかなという印象を持ちました。

Go Azure お疲れ様でした - まめしば雑記

あんまりまだよくわかってないけど、あのデモは結構興味惹かれたかも。

SignalR は、このあと見て行くように、単なる WebSocket 開発のためだけのライブラリーではなく、さらに多くの付加価値を含んだ上位のフレームワークです。抽象度も高く、日本語のエンコードなど含めプリミティブな処理を開発者が記述する必要はありません。

WebSocket サーバー開発 : SignalR とクロス ブラウザーへの対応 - 松崎 剛 Blog - Site Home - MSDN Blogs

SignalR という非同期でリアルタイムな双方向通信を実現するライブラリが面白そうなので試してみました。作者は ASP.NET チームの Damian Edwards 氏と David Fowler 氏です。

SignalR を簡単に使ってみた - まめしば雑記

二日目はオンライン参加だったので、セッションが終わってすぐ手元のPCで実際にサンプルを試してみた。

f:id:daruyanagi:20120704080210p:plain

まず、 NuGet で SignalR のサンプルをインストール。依存関係のあるものも自動ででろでろっとダウンロード・インストールされる。

f:id:daruyanagi:20120704080345p:plain

サンプルは株価の上がり下がりを表示するもので、サーバー側からデータが送られてきてクライアント側(Webブラウザー)の表示が更新されるという、要はプッシュ通知のデモになっている。見てるだけでもちょっと楽しい。

SignalR のもう一つのキモは、ブラウザーが対応する技術に応じて Web Socket やフレームを使い分けてくれるところ。これを確かめるために、今回は「IE Tester」というツールを利用してみた。

My DebugBar | IETester / Browser Compatibility Check for Internet Explorer Versions from 5.5 to 10

本当は仮想マシン環境でも用意すべきなんだろうけど、さすがにそれは面倒だった。ちなみに、 Microsoft では IE の旧バージョンをテストするための仮想環境を用意しているので、空き時間とディスク空き容量が豊富な人は試してみるとよいかもしれない。

窓の杜 - 【NEWS】Microsoft、互換性検証を目的としたIE6/7/8/9環境の仮想マシンイメージを更新

f:id:daruyanagi:20120704080652p:plain

残念ながら、 IE7 以下の環境では失敗したものの、

f:id:daruyanagi:20120704080658p:plain

Web Socket に対応していない IE8 でも動作した。「IE Tester」が完全に旧バージョンのIEをエミュレートしているとは限らないので、これをもって IE7 非対応とは言えないと思うが、まぁ、参考として。

f:id:daruyanagi:20120704081526p:plain

株式会社だるだる を追加して遊んでみた。ふふふ……