2015-11-30 51 views
0

我在Node.js應用程序中使用Redis。我不使用它進行緩存,我不想。我希望我在Redis中的數據在任何時候都是持久的。此外,我對redis的每次調用都寫入磁盤。在這種情況下使用Amazon彈性緩存有幫助嗎?因爲我知道Amazon彈性緩存處理備份複製和自動故障轉移,這對我來說非常重要。我在Amazon EC2上運行我的Node.js服務器。任何幫助或建議,將不勝感激。Amazon ElasticCache for Redis with Node.js服務器

回答

1

當前,Amazon ElasticCache保持持久狀態的方式是通過snapshotting,這意味着它使用備份和恢復功能在S3存儲桶中保留副本,以便在丟失或升溫時再次載入數據建立一個新的實例。

備份和恢復功能使用BGSAVE in the background,並且如果設置爲定期執行,則作爲實例的繁重操作,建議在只讀副本上運行。

所以要回答你的問題;我不認爲Amazon ElasticCache是​​您的問題的解決方案。這意味着正在尋找緩存層的解決方案可以擴展/加速在其他存儲引擎上運行的應用程序的查找。

更新:作爲一個手動設置選擇(從註釋中獲取)

如果你打開,以建立自己的Redis集羣redis.io/topics/cluster-spec的實例將是你最好的打賭,它照顧AFO和複製,啓用持久性選項作爲附加文件或備份到RDB文件

+0

因此,您可以建議任何處理Redis自動故障轉移和複製的解決方案。我們只在Redis中使用一個密鑰,但我們不能在任何時候丟失單個值,並且每次訪問密鑰時都會增加。 – Viddesh

+0

如果您打開設置您自己的Redis集羣實例http://redis.io/topics/cluster-spec這將是您最好的選擇,它會處理AFO和複製,並啓用持久性選項作爲「append」只備份文件或備份到RDB文件 – Rabea

+1

@Viddesh - 您應該查看Redis Labs的Redis Cloud。標準和多可用區計劃負責複製和自動故障轉移。這兩個計劃都可以配置爲使用AOF進行持久性存儲,將快照和預定/按需備份到多個目標。哦,你可以使用集羣來按需透明地縮放。最後,Redis雲可直接作爲AWS的雲服務使用,或者,您可以使用商業企業版部署自己的雲。 –