2012-02-12 30 views
2

在高負載情況下,當服務器執行BGSAVE時,我在RHEL Linux VM上遇到服務器故障。Linux VM上的Redis BGSAVE

這是問題沒有發生在物理盒子裏。

什麼是解決這個虛擬機的最佳解決方案?

我們正在使用RDB轉儲和AOF被禁用。

$ UNAME -a

Linux的AKM 2.6.18-238.5.1.el5#1 SMP週一2月21日5時52分39秒EST 2011 x86_64的x86_64的x86_64的GNU/Linux的

Redis的版本: 2.2.12

回答

1

您是否遇到高內存負載?當Redis做一個BGSAVE時,它會分析這個過程。這有效地將其佔用的內存量加倍。如果這會導致您的盒子交換,它可能會導致一切暫停。

解決方案:添加更多內存或嘗試減小數據庫的大小。

+0

這通常是錯誤的。 OS COW機制將允許頁面在兩個進程之間共享。爲了獲得兩倍的內存,客戶端必須在轉儲時間幀內更新所有頁面,這是不太可能的。 – 2012-02-12 10:19:16

+0

@Didier - 如果Redis實例是非常繁忙的排隊系統的一部分,這實際上是非常可能的。我以前見過它。 – 2012-02-12 16:30:44