spring-redis-data的一個坑

事故緣由:html

運維報告redis內存直線上升,而後查詢發現都是setrange操做,review代碼,無法發現setrange操做java

代碼以下:redis

redisTemplate.opsForValue().set(groupid+xxxResult.getSeriesNo(), JSON.toJSONString(xxxRquestDTO),1000*60L)spring

趕忙查一下api:api

set(K key, V value, long offset)oracle

Overwrite parts of  key starting at the specified  offset with given  value.
 
開發的本意設置超時時間,改爲這個api:
set(K key, V value, long timeout, TimeUnit unit)
Set the  value and expiration  timeout for  key.
快速上線後問題解決。
 
分析:
1.  set( K key,  V value, long offset) 這個存儲鍵值是以range的
2.spring重寫的這個和 set( K key,  V value, long timeout,  TimeUnit unit) 太容易讓人誤解了
3.其實中間件封裝好了,不須要設置時間單元,但因此次是舊項目改造,直接使用spring-data-redis致使的。
相關文章
相關標籤/搜索