redis優缺點總結
阿新 • • 發佈:2019-01-05
優點:
1 讀寫效能優異
2 支援資料持久化,支援AOF和RDB兩種持久化方式
3 支援主從複製,主機會自動將資料同步到從機,可以進行讀寫分離。
4 資料結構豐富:除了支援string型別的value外還支援string、hash、set、sortedset、list等資料結構。
缺點:
1 Redis不具備自動容錯和恢復功能,主機從機的宕機都會導致前端部分讀寫請求失敗,需要等待機器重啟或者手動切換前端的IP才能恢復。
2 主機宕機,宕機前有部分資料未能及時同步到從機,切換IP後還會引入資料不一致的問題,降低了系統的可用性。
3 Redis的主從複製採用全量複製,複製過程中主機會fork出一個子程序對記憶體做一份快照,並將子程序的記憶體快照儲存為檔案傳送給從機,這一過程需要確保主機有足夠多的空餘記憶體。若快照檔案較大,對叢集的服務能力會產生較大的影響,而且複製過程是在從機新加入叢集或者從機和主機網路斷開重連時都會進行,也就是網路波動都會造成主機和從機間的一次全量的資料複製,這對實際的系統運營造成了不小的麻煩。
4 Redis較難支援線上擴容,在叢集容量達到上限時線上擴容會變得很複雜。為避免這一問題,運維人員在系統上線時必須確保有足夠的空間,這對資源造成了很大的浪費。