我正在構建一個遊戲系統,許多玩家可以一起玩某種桌面遊戲。可能有數百個遊戲桌在同一時間。該系統由幾個組件組成,其中主要組件是遊戲服務器和DBworker,之間還有rabbitMQ。 DBWorker是照顧數據庫的組件。創建防彈計數器的最佳方法
所以,我需要確保每個遊戲都有唯一的ID來正確跟蹤遊戲的結果。我很想擁有某種自動增量解決方案。當然,我可以在PostgreSQL數據庫中做某種順序,並且每次都提取新的ID,但對我來說,這似乎是一個明顯的瓶頸(我不想一直與DB關聯,如果DB關閉,顯示必須去同時我們的工程師恢復數據庫)。
那麼,實現類似的任何想法或個人經驗?
p.s.我正在考慮將時間戳作爲ID,但真正的ID會更好。我不確定我爲什麼這麼想 - 如果我錯了,請糾正我。
預先感謝大家!
獲得隨機字符串/數字/ md5(隨機)或其他任何東西都不是問題 - 我現在使用時間戳。看,我上面寫了關於時間戳的信息。時間戳甚至更好 - 你可以通過它分類遊戲。 – Worker 2011-05-27 07:38:10
UUID是在服務器端很好的東西,但如果我告訴玩家遊戲ID是:550e8400-e29b-41d4-a716-446655440000他們會哭我敢打賭... – Worker 2011-05-27 07:49:50
經過一些考慮後,我認爲UUID是正確選擇。玩家應該玩遊戲而不是記憶UUID。就是這個。 – Worker 2011-05-27 08:12:05