MongoDB 或者 redis 是否可以替代 memcached


mongodb和memcached不是一個範疇內的東西。mongodb是文檔型的非關係型數據庫,其優勢在於查詢功能比較強大,能存儲海量數據。mongodb和memcached不存在誰替換誰的問題。

和memcached更爲接近的是redis。它們都是內存型數據庫,數據保存在內存中,通過tcp直接存取,優勢是速度快,併發高,缺點是數據類型有限,查詢功能不強,一般用作緩存。在我們團隊的項目中,一開始用的是memcached,後來用redis替代。

相比memcached:

1、redis具有持久化機制,可以定期將內存中的數據持久化到硬盤上。

2、redis具備binlog功能,可以將所有操作寫入日誌,當redis出現故障,可依照binlog進行數據恢復。

3、redis支持virtual memory,可以限定內存使用大小,當數據超過閾值,則通過類似LRU的算法把內存中的最不常用數據保存到硬盤的頁面文件中。

4、redis原生支持的數據類型更多,使用的想象空間更大。

5、用在redis的sharding中,一般是在負載非常高需要水平擴展時使用。我們還沒有用到這方面的功能,一般的項目,單機足夠支撐併發了。redis 3.0將推出cluster,功能更加強大。






轉載地址:http://www.zhihu.com/question/19645807/answer/12605611
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章