我正在開發一個Web應用程序,在這個應用程序中我必須展示一下任務列表。
我需要做的是,一旦用戶打開一個任務(即在其瀏覽器中打開),它將被刪除所有其他用戶列表,或者表明該任務是採取,沒有人可以打開一個任務,那就是已經被別人打開。
此外,我需要的是一旦用戶關閉任務(例如用戶關閉瀏覽器),它得到重新添加到其他用戶的任務列表。
我該怎麼做? WebSocket在客戶端?任何其他更好的選擇?
如何在服務器端進行管理?
謝謝如何在Web應用程序中創建實時協調鎖?
0
A
回答
2
有兩種解決方案(據我所知),您的問題:
- 阿賈克斯(和長輪詢)
使用Ajax可以輪詢服務器每隔X秒爲實現所描述的行爲所必需的數據。這可能會起作用,但它不是推薦的方法。閱讀爲什麼在this thread。
- 的WebSocket
就像你在一個桌面應用程序(因此得名),你可以打開一個WebSocket連接(而不是HTTP之一)使用的插座,把它只要根據需要,只有在完成後才能關閉它。這是數據在客戶端和服務器之間不斷流動的首選方式。這也是supported by almost every major browser out there
有爲的WebRTC和服務器發送的事件其他技術,例如,但考慮您的問題描述,這些可能不是你要找的內容。
題外話:我不知道爲什麼你的問題已經downvoted,看起來合法的給我。
相關問題
- 1. 何時在任何asp.net web應用程序中創建會話?
- 2. 在Android中創建Web應用程序
- 3. 在web應用程序中創建ListView
- 4. 如何在Windows Phone 8中創建圖庫鎖應用程序?
- 5. 如何在Web應用程序中運行調度程序實用程序
- 6. 創建Web應用程序
- 7. 如何使用Maven在Java Web應用程序中創建構建時間戳?
- 8. javax.xml.ws.WebServiceException:無法從Web應用程序調用webservice時創建JAXBContext
- 9. 如何創建實時應用程序和互聯應用
- 10. 如何實現應用程序協議
- 11. 如何使用SocketIO創建基於實時CRUD的Web應用程序
- 12. 何時/何地在Java EE Web應用程序上創建實體?
- 13. 如何在java web應用程序中創建圖表
- 14. 如何在Liferay中創建單獨的Web應用程序?
- 15. 如何在asp.net web應用程序中創建webshare?
- 16. 如何在VS2012中創建ASP.NET MVC Web應用程序項目
- 17. 如何在asp.net web應用程序中創建日誌文件?
- 18. 如何在dotnetnuke框架中創建一個web應用程序?
- 19. 如何在android中創建web應用程序?
- 20. 如何在codeigniter框架中創建移動web應用程序?
- 21. 如何在java web應用程序中創建虛榮URL?
- 22. 如何在Eclipse中創建jbpm6 Web應用程序?
- 23. 如何在intellij想法中創建Hello World Web應用程序?
- 24. 如何在Docker中創建多容器Web應用程序
- 25. 如何在.NET v3.5中創建ASP.NET Web窗體應用程序
- 26. 創建Android鎖屏應用程序。
- 27. 爲asp.net web應用程序創建一個調度程序。
- 28. 如何在Web應用程序中實現時區?
- 29. 如何從實時應用程序引擎應用程序創建local_db.bin
- 30. 在Spring Mvc Web應用程序中創建bean時出錯
你做了什麼,直到這一點來實現這一行爲呢?您正在使用的技術堆棧是什麼? (例如前端的JQuery,中間件的Spring等)。您可以在任務的'點擊'時觸發ajax查詢,並讓服務器從'任務池'中移除該任務,並在用戶「關閉」任務時觸發另一個Ajax查詢。在這一點上,這是我可以告訴你的。 –
直到我清楚瞭解這個「可操作性」之後,纔開始編碼,我想在客戶端打開一個websocket,並且花了一段時間(真)來鎖定任務,但不確定,我從來沒有做過這種事情(使用websocket)只讀取一些文檔,但我認爲與 - 例如 - 100.000 websocket連接我的服務器在同一時間檢查鎖不會是一個好主意.. 。 – hereForLearing
剛纔看到您的編輯,你可以說我使用的春天(其實我使用Grails的,但它是一回事,Grails的這裏有較少的用戶,以便者優先,使其成爲Java的問題),我讀過有關使用Ajax來做到這一點的文章,但不建議,因爲來自服務器的答案可能亂 – hereForLearing