私はWebアプリケーションを開発しています。ここでは、タスクのリストを示しています。
私がしなければならないことは、ユーザーがタスクを開いたとき(つまり、自分のブラウザで開くとき)、他のユーザーのリストがすべて削除されたり、タスクが実行されたことが示されたり、誰かによって開かれた。
さらに、ユーザーがタスクを閉じると(ユーザーがブラウザを閉じるなど)、他のユーザーのタスクリストに再追加する必要があります。
どうすればいいですか?クライアント側のWebSocket?その他の選択肢はどれですか?
これをサーバー側でどのように管理するのですか?
あなたの問題のための2つの解決策(私の知っていること)があるWebアプリケーションでリアルタイムのconcurencyロックを作成するにはどうすればいいですか?
0
A
答えて
2
ありがとう:
- アヤックス(ロングポーリング)のAjaxを使用して
は、サーバーをポーリングすることができますX秒ごとに、記述した動作を実装するために必要なデータがあります。これはうまくいくかもしれませんが、お勧めの方法ではありません。なぜthis threadで読んでください。
- のWebSocket
ちょうどあなたがデスクトップアプリケーション(名前)に使用したいソケットのように、あなたは、WebSocketの接続(HTTPではなく1)を開くことができます限り、それを維持あなたがそれで終わったときにのみそれを閉じてください。これは、データがクライアントとサーバーの間で常に流れるようにするための好ましい方法です。また、supported by almost every major browser out there
ありのWebRTCとサーバー送信されたイベントなど他の技術があるが、問題のあなたの説明を考慮すると、それらは、あなたが探しているものではないかもしれないです。
オフトピック:あなたの質問がなぜ落とされたのか分かりませんが、正当なものです。
関連する問題
- 1. リアルタイムで通信するWPFアプリケーションの作成を開始するにはどうすればよいですか?
- 2. カスタムピンスタートボタンをアプリケーションに作成するにはどうすればいいですか?
- 3. Webでスピナーを作成するにはどうすればよいですか?
- 4. このスクリプトをjQueryでリアルタイムに作成したいのですが、どうすればいいですか?
- 5. iPadのマルチタスキングジェスチャーがモバイルWebアプリケーションをロックするのを防ぐにはどうすればよいですか?
- 6. 分散プロジェクトでリアルタイム通知を作成するにはどうすればいいですか?
- 7. 1人のインストーラでJava EE Webアプリケーションのインストーラを作成するにはどうすればよいですか?
- 8. Webアプリケーションでシステムショートカットをバインドするにはどうすればいいですか?
- 9. 私のWebアプリケーションのWebページをAndroidアプリケーションで実行するにはどうすればいいですか
- 10. バッチWebブラウザを作成するにはどうすればよいですか?
- 11. Mavenを使用してJava Webアプリケーションでビルドタイムスタンプを作成するにはどうすればよいですか?
- 12. リアルタイムのWebベースのテキストエディタとインスタントメッセンジャーはどうすればよいですか?
- 13. CGI、FastCGI、mod_perlをサポートするPerl Webアプリケーションを作成するにはどうすればよいですか?
- 14. クライアントライブラリロジックをリアルタイムで更新するにはどうすればいいですか?
- 15. Webアプリケーションでドラッグ可能なアイテムを作成するにはどうすればよいですか?
- 16. Bluemix for Java Webアプリケーションでフォルダを作成するにはどうすればよいですか?
- 17. ASPXでほぼリアルタイムのスクロールライングラフコントロールを作成するにはどうすればよいですか?
- 18. Angular2アプリケーションを作成するにはどうすればよいですか?
- 19. ネイティブWebアプリケーションを構築するにはどうすればいいですか?
- 20. Java EE/jboss WebアプリケーションでWebアプリケーションのすべてのユーザーのBeanを作成するにはどうすればいいですか?
- 21. ユーザーがSpring MVC Webアプリケーション内でWebフォームを作成または編集できるようにするにはどうすればいいですか?
- 22. パブリックAPIを使用してWebアプリケーションを作成するにはどうすればよいですか?
- 23. 他のすべてのアプリケーションをロック/フリーズし、閉じられないWinFormsアプリケーションを作成するにはどうすればよいですか?
- 24. ログインして簡単なWebアプリケーションを作成するにはどうすればよいですか?
- 25. リアルタイム.NETアプリケーションでガベージコレクションを回避するにはどうすればいいですか?
- 26. Jenkinsでパイプラインをロックするにはどうすればいいですか?
- 27. レールをリアルタイムで更新するにはどうすればよいですか?
- 28. リアルタイムでSettings.bundleを変更するにはどうすればよいですか?
- 29. Androidのアプリケーションでスクリーンロック/ロック解除機能を開発するにはどうすればいいですか?
- 30. Androidでロック(concurrent.locks.Lock)を作成するにはどうすればよいですか?
この動作を達成するためにこの時点まで何をしましたか?あなたが使っているテクノロジースタックは何ですか? (フロントエンドのJQuery、ミドルウェアのSpringなど)。あなたは、タスクの 'クリック'でajaxクエリを起動し、サーバが 'タスクのプール'からそのタスクの削除を処理し、ユーザがタスクを閉じるときに別のajaxクエリを発生させることができます。この時点で、これは私があなたに伝えることのできるすべてです。 –
私はこのことの "実行可能性"について明確なアイデアが得られるまでコーディングを開始しませんでした。クライアント側でwebsocketを開き、タスクをロックするためにしばらく(真実)私はこの種のことをやったことがありませんでした(WebSocketを使用して)いくつかのドキュメントを読んだだけですが、私は思っています - 例えば100.000 websocketは私のサーバに接続してロックをチェックするのは良い考えではありません。 。 – hereForLearing
あなたの編集を見ただけで、私は春を使っていると言うことができます(実際には私はgrailsを使っていますが、同じことです、grailsはここではあまりユーザーが少ないのでJavaの質問にする方が良いです)サーバーからの回答が無秩序で戻る可能性があるので、推奨しません。 – hereForLearing