Redis過期時間


上次開發用了redis后效果不錯,后來在進階的開發中查詢到,如果redis一直不釋放也會占用內存,於是就想着給redis加上個過期時間。

具體操作很簡單,只要在設置redis的時候加上exp就可以了,時間長短可以自己定。

 1 public static void SetRedisTable(string key, DataTable dt, TimeSpan? exp = null)
 2         {
 3             if (dt != null && !string.IsNullOrEmpty(key))
 4             {
 5                 string value = JsonHelper.ToJson(dt);
 6                 if (exp == null)
 7                     exp = new TimeSpan(864000000000);
 8                 RedisClient.Db.StringSetAsync(key, value, expiry: exp);
 9             }
10         }

注意這個exp的時間,之前以為是以毫秒計算,所以設置一天過期的話只寫了86400000,然而,他這里的最小單位似乎是。。100ns。。也就是1個ticks=100毫微秒=100納秒。

所以應該寫成864000000000表示一天。

恩,順便補了一下時間方面的知識。。

1秒=1000毫秒(ms) 1毫秒=1/1,000秒(s) 
1秒=1,000,000 微秒(μs) 1微秒=1/1,000,000秒(s) 
1秒=1,000,000,000 納秒(ns) 1納秒=1/1,000,000,000秒(s) 
1秒=1,000,000,000,000 皮秒(ps) 1皮秒=1/1,000,000,000,000秒(s) 

C#中時間的Ticks屬性
是一個很大的長整數,單位是 100 毫微秒。表示自 0001 年 1 月 1 日午夜 12:00:00 以來已經過的時間的以 100 毫微秒為間隔的間隔數。

1 毫秒 = 10^-3 秒,
1 微秒 = 10^-6 秒,
1 毫微秒 = 10^-9 秒,
100 毫微秒 = 10^-7 秒。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM