禁止套娃!Redis官網宕機,返回“連接不上Redis”

Redis 官網 redis.io 昨日罕見地宕機了一段時間。宕機原本不是什麼新鮮事,但戲劇性的是網站的報錯信息居然是連接不上 Redis。

Redis::CannotConnectError at / Error connecting to Redis on 127.0.0.1:6379 (Errno::ECONNREFUSED)

禁止套娃!Redis官網宕機,返回“連接不上Redis”


看到這,忍不住刷一句:禁止套娃!

Redis 作者 Antirez 很快修復了問題,並解釋了宕機的原因。原來是因為他最近在運行 redis.io 的實例上安裝了 Try Redis(用於在線體驗 Redis 數據庫),可能是未能對 session key 進行良好的垃圾回收,從而導致內存累積,最終因為內存溢出(OOM )引發宕機。

對此,Antirez 表示這種情況只是由於實例的內存不足而導致的。所以他的解決方案也十分直接,升級為 $20/月,4G 內存的實例。另外還為 allkeys-lru 策略配置了 1GB 內存的限制。

禁止套娃!Redis官網宕機,返回“連接不上Redis”


禁止套娃!Redis官網宕機,返回“連接不上Redis”


我們也由此得知一個出乎大家意料的情況,Redis 官網居然運行在一臺僅 $5/月,內存 1G 的 DigitalOcean 虛擬主機(Droplet)上,這也是 DigitalOcean 提供的最低(標準)配置。

禁止套娃!Redis官網宕機,返回“連接不上Redis”


Antirez 解釋道,選擇這麼便宜的配置是因為這臺主機使用了 Redis 作為持久存儲,並且只跑了一個 Ruby 應用,所以已經足夠應對。


分享到:


相關文章: