0
我正在開發一款MMORPG,它相當的不錯。長時間處於活動狀態的MySQL連接不好?
但是,我現在注意到MySQL服務器有一個自動連接終止時間限制。所以在x時間之後,連接終止。所以,我的服務器發生的事情是在大約8小時的運行時間後,用戶無法在註銷時登錄或更新其角色。
一個簡單的解決辦法是使超時值非常大,但我想知道這是一個壞主意嗎?
另一個解決方案是,在進行SQL查詢之前檢查連接是否仍然有效,並且如果不啓動新的連接。儘管如果它沒有不良副作用,我更喜歡第一種選擇。
用戶將直接連接到您的SQL服務器?爲什麼不讓它們連接到服務,並且該服務連接到數據庫。這樣你可以避免MySQL的超時,你可以驗證傳遞的信息。如果用戶可以直接訪問數據庫,他們可能會做壞事。 – 2014-10-17 14:34:40
沒有用戶不直接連接到數據庫。用戶連接到我的服務器,然後從服務器根據用戶的操作在sql server上執行查詢。雖然用戶只能在兩種情況下與sql進行交互(當他們登錄時將所有帳戶信息加載到內存中,並且在註銷時將所有帳戶信息保存到數據庫中)。 – Ricky 2014-10-17 15:02:56
如果他們連接到您的服務器,服務器應該在請求完成後關閉連接,然後每次他們需要對數據庫執行某些操作時都會打開一個新請求。這將避免超時。 – 2014-10-17 15:14:52