TLDR
それは行うことができます! Video。 Code。
長い話
私は、Nancyでの作業溶液を得SignalRとRasperry PI(モノ3、ハードフロート)上のコンソールアプリケーションから実行しているOWINベースのWebサーバNoWinを管理していました。この溶液中のRPi.Nancyプロジェクトを参照してください:IIS SignalRのホストに接続されている純粋なクライアントであることと比較すると
https://github.com/neutmute/RPi.Demo
を、自己ホスト型Webサーバとしてpiは多少ラグです。 knockout.jsバウンド範囲スライダからの応答は、更新ストリームがクライアント上での移動を停止した後にサーバーにフィードスルーするのに数秒かかる非常に遅いです。同じ自己ホストサーバをPC上で走らせることは、遅れを示すが、Piほど遅くはない。
自己ホストされた信号Rを実行している間、スライダがドラッグされ、signalRイベントのストリームが送信されている間、モノプロセスは97%を消費します。これは、純粋なクライアントモードでIISをハブサーバーとして使用する場合には発生しませんが、スライダが激しくドラッグされるとIISサーバーで高いCPU使用率が発生するため、piを少し遅らせる必要があります。
私もウェブサーバーとしてKatanaを試しましたが、NoWinよりも遅く実行されました。
完全に自己ホストされたSignalRソリューションは、ここでいくつかのボタンプレスを送信していただけでうまくいくことに注意してください。スライダを前後にドラッグして連続したイベントストリームを生成した場合にのみ、 1つの解決策は、ノックアウトバインディングを介してスライダからの更新を抑制し、スライドイベントの解像度を低減することである。
また、signalRがIIS 8でホストされている場合に限り、piでホストされているSignalRはWebソケットを使用できないことに注意してください。サーバーサイドイベントトランスポートが代わりに使用されます。これは、純粋なクライアントモードのときと同じ転送です。
+1技術チャレンジ – Cybermaxs