リアルタイム ASP.NET と SignalR
ASP.NET 用のきわめてシンプルなリアルタイム Web
Windows、Linux、macOS でサポートされています
今日の最新アプリでは、更新ボタンを押すことなく最新の情報を提供することが求められています。ダッシュボード、マップ、ゲームなどにリアルタイム機能を追加します。
リアルタイム機能とは? 接続しているクライアントに対して、サーバー側のコードがコンテンツの更新発生時にリアルタイムにプッシュできるようにする機能です。
SignalR ハブは C# コードで記述し、ページや API と一緒にASP.NET アプリに追加できます。
単純なプログラミング モデルは、依存関係の挿入、認証、承認、スケーラビリティなどの他の ASP.NET 機能とシームレスに統合されます。
チャットは例として使用されることがよくありますが、さらに多くのことを行うことができます。ユーザーが Web ページを更新して新しいデータを表示するか、新しいデータを取得するためにページが Ajax の長いポーリングを実装する場合、SignalR を使用する候補になります。
SignalR では、リアルタイム ゲームなど、サーバーからの高頻度の更新を必要とするまったく新しい種類のアプリケーションも有効になります。
SignalR は、他の .NET と同様に、GitHub のオープンソースです。 ソース コードに加えて、ハブとクライアント間の通信用のプロトコル仕様も公開されています。
JavaScript、.NET (C#、F#、Visual Basic)、Java 用のクライアント SDK を使用すると、SignalR ハブに接続して、Web、モバイル、デスクトップ、ゲームなど、ほぼすべてのプラットフォームでリアルタイム メッセージの受信を開始できます。
SignalR は、WebSocket が利用可能な場合にはそれを使用し、利用できない場合には他の技術にフォールバックしますが、アプリケーションのコードは同じままです。
ASP.NET の残りの部分と同様に、SignalR は高パフォーマンスを目指してビルドされた、最速のリアルタイム フレームワークの 1 つです。
Redis、SQL Server、Azure Service Bus を使用して各インスタンス間でメッセージを調整するための組み込みサポートを使用して、サーバー間でスケールアウトします。
SignalR アプリを自分でホストすることも、Azure SignalR Service を使用して完全にマネージド プラットフォームを作成することもできます。Azure SignalR Service はパフォーマンス、スケーラビリティ、可用性などを考慮し、99.9% の SLA を保証します
このステップ バイ ステップ チュートリアルは、あなたのコンピューターで ASP.NET と SignalR を実行するのに役立ちます。