2017-07-26 115 views
1

我想在我的世界中優化我的遊戲服務器。我的數據庫中有15萬用戶,每天在我的服務器上加入15k個用戶。MySQL到Redis和Redis到MySQL

我看了一下Redis的,我也讀了Redis的是比MySQL快,我知道,我不能因爲我的網站使用同一個數據庫從MySQL放棄。

,不過我會每15分鐘所有的MySQL數據加載到Redis的,那麼我所有的服務器插件將在此數據的工作,那麼接下來的15分鐘後,將redis的數據導出到MySQL?我將相同的數據加載到每個服務器上的4個服務器和3個插件,所以也許將所有加載到一個Redis服務器的速度會比從4個服務器* 3插件向MySQL發送請求的速度更快。

感謝您的幫助。

回答

0

嗨儘可能多的我能理解你有4臺MySQL服務器和3個插件。 由於Redis的速度非常快,但Redis的用例與mysql不同。我的建議是在Redis中加載數據,經常使用這些數據會比mysql快得多,但爲了使速度更快,您必須智能地設計密鑰,以便Redis能夠更快地搜索它。您可以在一定的時間間隔後刷新密鑰和值,明確地提高系統的性能。

+0

我有4臺的Minecraft服務器,每臺服務器上都是3個的Minecraft服務器插件。每個插件使用來自同一臺服務器的相同的mysql數據。 – marcinqxd

+0

好吧,然後只是把數據從MySQL的redis和刷新後,你更頻繁地使用某些間隔,而不是從MySQL中獲取它。 –

+0

所以它會更快的解決方案? – marcinqxd

2

Redis的是從一個MySQL數據庫緩存數據的有效途徑。儘管Redis擁有持久性選項,但許多人仍然傾向於使用MySQL數據庫來執行此任務。由於Redis的內存中運行,它會比MySQL數據庫,其(大部分)確實在內存中運行得更快。通常,人們會傾向於使用HashMaps存儲緩存數據,但由於您有3臺服務器,Redis將是更好的選擇。這樣,您就不必爲每臺服務器創建3個接近相同的緩存。