2012-09-26 52 views
4

在Supervisor的生產環境中運行redis是否是一種好的做法?是否推薦使用Supervisor運行redis

我已經搜索了一下,但還沒有看到很多這樣做的例子。如果沒有,在生產環境中運行redis的正確方式是什麼?

回答

8

我個人只是在生產中使用Redis上的Monit。如果Redis崩潰,Monit會重新啓動它,但更重要的是,Monit可以監控Redis當前需要的RAM數量(這是最大的問題)

配置可能是這樣的(如果maxmemory在Redis的設置爲1GB)

check process redis 
    with pidfile /var/run/redis.pid 
    start program = "/etc/init.d/redis-server start" 
    stop program = "/etc/init.d/redis-server stop" 
    if 10 restarts within 10 cycles 
    then timeout 
    if failed host 127.0.0.1 port 6379 then restart 
    if memory is greater than 1GB for 2 cycles then alert 
1

Well..it取決於。如果我在守護進程控制下使用redis,我會使用runit。我確實使用監控,但僅用於監控。我喜歡看到綠燈。

但是,對於redis來利用真正的權力,你不會運行redis作爲deamon esp的主人。如果主控制器發生故障,則必須將一個從控制器切換到主控制器。簡單地說,我只是將節點放在頭上,然後我有一個廚師食譜來創建一個新節點。

但是再次....它也取決於你快照的頻率。我沒有快照,因此不需要deamon控制。

人們用蠻力速度使用雷德。這意味着不寫入磁盤並將所有數據保存在RAM中。如果一個節點發生故障......並且您不快照......數據丟失。

相關問題