web-dev-qa-db-ja.com

Webアプリケーションのリアルタイムライブ自動更新

これは、Webアプリケーションの更新がどのように行われるかの背後にあるアーキテクチャを理解しようとすることです。

UIに多数のレコードが表示されている非公開のWebサイトで作業してきましたが、このアプリケーションのインテリジェントな部分は、UI内のボタンに触れずに、APIを介してデータベース内の何かを削除すると、UIが自動的に削除されることです。リストから外します。

進行中のファイルのアップロードがある場合、パーセンテージで進行状況バーが表示されます。バックエンドデータベースの変更と完全に接続されているように、舞台裏でメタデータの変更がすぐに反映されます。

メールアプリケーションにも同様の機能があります。たとえば、Gmailの場合、メールが到着すると、更新せずにレコードが自動的に追加されます。

問題は、UIがバックエンドで何かが変更されたことをどのように認識するか、データを送受信する接続されたソケットがあるか、または継続的なajax呼び出しがあるか(効率的ではないようです)です。

基本的に要点は、UIがバックエンドの変更とどのように同期するかです。

2
App2015

「UI内のボタンに触れずにAPIを介してデータベース内の何かを削除すると、UIは自動的にリストから削除します」-ブラウザページはサーバーを定期的にポーリングし、データベースの状態をダウンロードしています。

はい、あなたが思ったように、それはAJAXです。現在、すべてのブラウザがサーバーからのデータのプッシュをサポートしているわけではないため、効率的かどうかにかかわらず、これが唯一の方法です。

(クライアントとサーバーの両方をコーディングし、たとえば作業環境で特定のブラウザーの使用を強制できる場合は、ユーザー サーバープッシュ