我想爲Facebook開始一個項目,應用程序就像實時多人國際象棋遊戲。我遇到的問題是我不知道如何在播放器移動一個片段並更新player2瀏覽器中的新位置時存儲數據。我將使用PHP,MySQL爲服務器一側和jQuery爲客戶端渲染。最簡單的想法是將數據存儲在XML或MySQL中,並將結果重新生成到player2瀏覽器。但是我知道,當數千名球員參加比賽時,這不會是一種有效的方式。由於我沒有時間爲這個項目學習新的語言,我將不得不堅持使用PHP。我不打算使用閃光燈,因爲我想讓我的客戶端輕量且無閃光。那麼有什麼辦法可以解決我的問題嗎?如何在PHP請求之間存儲或共享實時數據?
1
A
回答
1
我想通過服務器是唯一的選擇。那就是存儲遊戲狀態是xml還是sql db。而且客戶需要頻繁地調查此狀態,例如jquery ajax。使用標準Web組件無法讓客戶直接與p2p進行通信。
2
你將不得不輪詢服務器更新每..也許2秒,取決於服務器負載。如果你使用flash,會有另一種選擇 - 使用套接字,它更適合多人遊戲,但是我認爲你不需要第三方運行時就可以製作它。HTML5有一些websocket,但它是當涉及到跨瀏覽器兼容性時非常糟糕
+1
在高服務器負載時,以較長間隔隔開請求是個好主意。這樣,當負載較輕時,您可以將其設置爲額外響應。 – 2010-05-12 01:07:50
相關問題
- 1. PHP $ _SESSION在請求之間不共享
- 2. 在實例之間共享存儲
- 3. PHP和請求之間共享資源
- 4. 如何存儲數據庫之間共享的數據?
- 5. 如何在存儲過程之間共享數據
- 6. 如何在g-wan中的http請求之間共享內存?
- 7. 在Web請求之間共享資源?
- 8. 如何在多個Amazon EC2實例之間共享存儲?
- 9. Dropbox數據存儲 - 在用戶帳戶之間共享數據
- 10. Python:在實例之間共享數據
- 11. 如何在Django模型實例之間共享公共數據?
- 12. 在bash和php之間共享數據
- 13. 在Sinatra條件和請求塊之間共享數據
- 14. 如何在類之間共享數據?
- 15. 如何在iPhone之間共享數據?
- 16. 如何將靜態數據存儲在servlet中並在所有會話/請求之間共享?
- 17. 如何存儲中間數據並在SQL查詢之間共享?
- 18. 在JAVA中的會話或請求之間共享PageContext?
- 19. JPA實體之間的數據共享
- 20. 在應用程序之間共享核心數據存儲
- 21. 在2個數據庫之間共享1個存儲庫
- 22. 在實例之間共享緩存
- 23. 如何在Express中的請求對象上的路由之間共享數據?
- 24. 在deamon和頁面請求之間共享PHP會話(或類似)
- 25. C++,如何在進程或線程之間共享數據
- 26. Python:如何在不同類的實例之間共享數據?
- 27. Ruby - 如何在ClassMethod和實例之間共享數據
- 28. 在數據庫之間共享數據
- 29. 如何在DOM和PHP之間共享數據?
- 30. 我如何在PHP頁面之間共享數據?
我認爲數據庫是一個不錯的選擇 - 如果您正確構建它,速度不會太慢 - 也許不會保留舊遊戲數據和某種自動數據庫維護腳本。 .. – ronaldosantana 2010-05-11 22:35:48
這就是我想出來的。感謝你們所有人的寶貴意見! – Devyn 2010-05-11 22:51:12