SignalR のデモがちょっとかっこいい
執筆日時:
イベントの方向とタイトル的に ASP.NET 全体を少しずつ喋る形にしたのですが、SignalR だけで 45 分話してもいけたかなという印象を持ちました。
あんまりまだよくわかってないけど、あのデモは結構興味惹かれたかも。
SignalR は、このあと見て行くように、単なる WebSocket 開発のためだけのライブラリーではなく、さらに多くの付加価値を含んだ上位のフレームワークです。抽象度も高く、日本語のエンコードなど含めプリミティブな処理を開発者が記述する必要はありません。
WebSocket サーバー開発 : SignalR とクロス ブラウザーへの対応 - 松崎 剛 Blog - Site Home - MSDN Blogs
SignalR という非同期でリアルタイムな双方向通信を実現するライブラリが面白そうなので試してみました。作者は ASP.NET チームの Damian Edwards 氏と David Fowler 氏です。
二日目はオンライン参加だったので、セッションが終わってすぐ手元のPCで実際にサンプルを試してみた。
まず、 NuGet で SignalR のサンプルをインストール。依存関係のあるものも自動ででろでろっとダウンロード・インストールされる。
サンプルは株価の上がり下がりを表示するもので、サーバー側からデータが送られてきてクライアント側(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環境の仮想マシンイメージを更新
残念ながら、 IE7 以下の環境では失敗したものの、
Web Socket に対応していない IE8 でも動作した。「IE Tester」が完全に旧バージョンのIEをエミュレートしているとは限らないので、これをもって IE7 非対応とは言えないと思うが、まぁ、参考として。
株式会社だるだる を追加して遊んでみた。ふふふ……