ソリューションのアイデア
この記事ではソリューションのアイデアについて説明します。 クラウド アーキテクトはこのガイダンスを使用すると、このアーキテクチャの一般的な実装の主要コンポーネントを視覚化しやすくなります。 ワークロードの特定の要件に適合する、適切に設計されたソリューションを設計するための出発点として、この記事を使用してください。
このソリューションでは、ライブラリと Azure サービスを使用してカスタムのコラボレーション要件を満たす方法を示します。 このソリューションでは、リアルタイム コラボレーションに加えて、ユーザー プレゼンスの状態もサポートされています。 ユーザーはカスタム アプリで連携してアイデアを収集し、新しいアイデアの追加、変更、削除をリアルタイムで確認して、コラボレーション セッション中のデータの競合を回避できます。
アーキテクチャ
このアーキテクチャの PowerPoint ファイルをダウンロードします。
データフロー
- アプリケーションは、Microsoft Graph Toolkitの Login コンポーネントを使って、ユーザーがサインインできるようにします。 Login コンポーネントは、MSAL プロバイダーを使って、ユーザーの資格情報を Microsoft Entra ID に対して検証します。
- ユーザーがサインインすると、クライアント Web アプリは Fluid Framework を使って Fluid Relay に接続し、コラボレーション セッションを作成します。
- その他のユーザーがサインインし、コラボレーション セッションに参加します。 Fluid Framework は、各クライアントで送受信されたデータをマージして、すべてのユーザーに対して同期されるようにします。 この同期を確実に行うために、トータル オーダー ブロードキャスト アルゴリズムと最終的な整合性が使用されます。
- ユーザーが共同作業を続ける間、Fluid Relay によってコラボレーション データが自動的に格納されます。
- 新しいユーザーがコラボレーション セッションに参加すると、各ユーザーのクライアントは、以前に格納されたデータを取得し、セッション内の他のユーザーと同期されるようにします。
Components
- Fluid Framework は、共有状態を分散および同期するためのクライアント ライブラリのコレクションです。 これらのライブラリを使用すると、ローカル データの操作に使用されるのと同様のコーディング パターンを使って、複数のクライアントで共有データ構造を同時に作成して操作できます。
- Fluid Relay は、Fluid Framework の管理サービスです。 これは、開発者がリアルタイムのコラボレーション エクスペリエンスを構築し、接続されている JavaScript クライアント間で状態をリアルタイムでレプリケートするのに役立ちます。
- Microsoft Entra ID は、Microsoft のクラウドベースの ID およびアクセス管理サービスであり、従業員のサインインやリソースへのアクセスを支援します。
- Microsoft Graph Toolkit は、Microsoft Graph にアクセスして操作するための、フレームワークに依存しない再利用可能なコンポーネントおよび認証プロバイダーのコレクションです。
- Azure Static Web Apps は、コード リポジトリから Azure にフル スタックの Web アプリを自動的にビルドしてデプロイするサービスです。
シナリオの詳細
コラボレーションは、ビジネスの効率性と生産性にとって重要です。 Microsoft Teams などのツールでは、チャット、音声、動画を使ってコラボレーションする優れた方法が提供されます。 Word、Excel、PowerPoint Online を使用すると、さまざまな種類のドキュメントとスプレッドシートで世界中の同僚や顧客と簡単に共同作業できます。
市販の既製ソリューションと同様に、Azure サービスを使用して、カスタム アプリケーションにリアルタイムのコラボレーション機能を追加できます。 このソリューションでは、ライブラリと Azure サービスを使用してカスタムのコラボレーション要件を満たす方法を示します。 このソリューションでは、リアルタイム コラボレーションに加えて、ユーザー プレゼンスの状態もサポートされています。 ユーザーはカスタム アプリで連携してアイデアを収集し、新しいアイデアの追加、変更、削除をリアルタイムで確認して、コラボレーション セッション中のデータの競合を回避できます。
これらの要件を満たすために、このソリューションでは、Fluid Framework と Azure Fluid Relay が使用されます。 Microsoft Graph Toolkit および Microsoft Authentication Library (MSAL) プロバイダーの Login コンポーネントを使用して、Microsoft Entra ID に対してユーザーを認証します。
考えられるユース ケース
このソリューションは、以下を必要とするカスタム アプリケーション ソリューションを構築する企業に適用されます。
- セキュリティで保護されたアプリケーション アクセス。
- 複数のユーザー間でのリアルタイムのデータ コラボレーション。
- 組み込みのコラボレーション データ ストレージ機能。
このシナリオのデプロイ
このシナリオを示すコード サンプルを取得してください。
共同作成者
この記事は、Microsoft によって保守されています。 当初の寄稿者は以下のとおりです。
プリンシパル作成者:
- Dan Wahlin | プリンシパル クラウド デベロッパー
次のステップ
このソリューションで使用されるテクノロジの詳細については、次の記事を参照してください。
- Microsoft Entra ID
- Azure Fluid Relay
- Azure Static Web Apps
- Fluid Framework
- Microsoft Graph
- Microsoft Graph Toolkit
- Fluid Framework のトータル オーダー ブロードキャストと最終的な整合性