亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

頻繁操作的數據用redis緩存還是自建緩存比較好?

頻繁操作的數據用redis緩存還是自建緩存比較好?

眼眸繁星 2019-03-01 10:37:01
java 項目,要用到兩個數據結構1 {province : set<phonenumber>}2 {phonenumber: {"username": username, "status": status }}用的時候大致是時不時插入或者刪除電話號碼到1的set里(刪除要用到定時機制或者超時機制)或者根據省份查1得到集合set,然后在2里遍歷這個電話號碼的集合 單項目使用,不用和其他服務共享數據自建緩存的話要用到hashset hashmap/concurrenthashmap ,還要定時器redis的話直接用,但是用redis的性能和自建緩存比有明顯差別嗎?
查看完整描述

10 回答

?
守候你守候我

TA貢獻1802條經驗 獲得超10個贊

  1. 估算數據量,及數據增長趨勢,如果內存能夠承受,可以用Map,我試過往Map里放500M的數據,可以承受的
  2. 如果用redis,考慮網絡IO的延遲
  3. 不要過早優化,如果目前內存夠用,沒必要上第三方緩存,開發的時候采用接口編程,如果以后換了再換實現就行了
查看完整回答
反對 回復 2019-03-01
?
GCT1015

TA貢獻1827條經驗 獲得超4個贊

1.Redis是用C語言開發的一個開源的高性能鍵值對(key-value)數據庫,redis 的性能當然比自建緩沖的性能好,畢竟 redis 是經過大量實踐和改進的,如果項目不上線,另說,你可以嘗試下
2.緩存(數據查詢、短連接、新聞內容、商品內容等等)。(最多使用)

查看完整回答
反對 回復 2019-03-01
?
人到中年有點甜

TA貢獻1895條經驗 獲得超7個贊

我們用的是apache ignite網絡緩存。這套緩存系統好評

查看完整回答
反對 回復 2019-03-01
?
搖曳的薔薇

TA貢獻1793條經驗 獲得超6個贊

查看完整回答
反對 回復 2019-03-01
?
喵喵時光機

TA貢獻1846條經驗 獲得超7個贊

Redis 緩存的話需要注意的是網絡問題,如果部署在同一臺機器就沒有這個顧慮了。

查看完整回答
反對 回復 2019-03-01
?
隔江千里

TA貢獻1906條經驗 獲得超10個贊

1.建議使用redis,這樣可以降低耦合度,
2.另個redis的緩存處理機制是經過很多成熟產品檢驗的,其處理的速率及性能都遠遠超過自建。

查看完整回答
反對 回復 2019-03-01
?
HUX布斯

TA貢獻1876條經驗 獲得超6個贊

redis 否則 沒法水平擴容。除非當存緩存用。

查看完整回答
反對 回復 2019-03-01
?
叮當貓咪

TA貢獻1776條經驗 獲得超12個贊

如果只考慮性能,自建緩存必然比redis高效。

因為你是單應用,如果內存足夠的話自建的內存緩存(例如concurrenthashmap )完全可以滿足需求

也可以使用第三方緩存類,例如Google Guava 緩存類(不用你自己寫定時器去清除緩存)。

//Google Guava緩存的例子
        Cache<String, String> cache = CacheBuilder.newBuilder()//
                .expireAfterAccess(1000, TimeUnit.MILLISECONDS)// 
                .build();


        cache.put("key1", "value");

        String value = cache.getIfPresent("key1");
查看完整回答
反對 回復 2019-03-01
?
慕標5832272

TA貢獻1966條經驗 獲得超4個贊

看規模了。小的話肯定自建了。

查看完整回答
反對 回復 2019-03-01
?
一只萌萌小番薯

TA貢獻1795條經驗 獲得超7個贊

要是數據量小的話,可以直接使用同步集合(避免數據不一致),因為程序級的內存使用肯定要比通過網絡請求的緩存效率高。但是問題是你的程序重啟時,你每次都要重新加載數據到內存中,還要自己寫定時任務修改數據,對于自己隨便寫的程序,可以這樣做,如果是商業程序,不建議這么做。
redis在商業程序或者數據量比較大的時候需要用的。

查看完整回答
反對 回復 2019-03-01
  • 10 回答
  • 0 關注
  • 1408 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號