我目前正在爲教育目的開發一款遊戲。如何在MySQL數據庫上以較高的查詢率優化Java程序
遊戲是一個小型聊天,每個玩家都有一個人物。這個數字的位置寫在MySQL數據庫中,每次玩家移動他的數字時都會更新。
目前,每60幀,遊戲會更新所有玩家的位置並在遊戲客戶端更改它們。數據庫的性能並不是我唯一關心的問題,因爲這會導致遊戲幀速下降到30-50fps左右。
很顯然,這會爲每位玩家產生1次位置更新查詢(遊戲以60fps運行)。考慮比我大一些,還有一些朋友作爲用戶,我可以想象這可能是一個問題。
標準租用的web服務器能夠處理這個問題嗎?我怎麼能改進它? (它不能更新的位置小於每秒一次)
我希望你有一些想法:-)
保留內存中的位置,而不是在數據庫中。 –
取決於基礎設施,但您可以將緩存保留在內存中(即不要從數據庫讀取數據)並且只能在數據庫中寫入一次。如果服務器出現故障,如果丟失最後幾秒鐘,我認爲這不是災難? –
我將如何讓他們在記憶中?該位置更新,當人們四處移動所有的時間,所以我需要顯示在所有其他客戶端的實際位置,以及 –