zoukankan      html  css  js  c++  java
  • ServiceStack.Redis 缓存过期,并未失效的暂时解决办法

    服务器:Redis版本运行环境如图,生产环境是全内存运行。

    客户端NuGet 引入:ServiceStack.Redis

    加入缓存代码:

            /// <summary>
            ///  Set
            /// </summary>
            /// <typeparam name="T">类型</typeparam>
            /// <param name="key">键</param>
            /// <param name="t">值</param>
            /// <param name="timeout">多少分钟后过期</param>
            /// <returns></returns>
            public static bool Set<T>(string key, T t, double minOut = 60*3)
            {
                using (var redisClient = RedisManager.GetClient())
                {
                    key = "Str_" + key;
                    return redisClient.Set<T>(key, t, ExpireDateTime(minOut));
                }
            }
    

    但过了相应的时间之后,缓存没有失效。做了各种尝试.... 最后:

     获取所有缓存名称

    List<string> GetAllKeys();
    

     定点清除,也可以全部干掉

            void FlushAll();
            T Get<T>(string key);
            IDictionary<string, T> GetAll<T>(IEnumerable<string> keys);
            long Increment(string key, uint amount);
            bool Remove(string key);
            void RemoveAll(IEnumerable<string> keys);
    

    希望给一些方法。解决问题不全都靠技术,方法也行。 

  • 相关阅读:
    洛谷[P1002]过河卒
    ACM-Teleportation
    ACM-Team Tic Tac Toe
    Data_Structure04-树
    Data_Structure03-栈和队列
    Data_Structure02-线性表
    Data_Structure01-绪论
    C语言第二次实验报告
    C语言第一次实验报告
    mysql
  • 原文地址:https://www.cnblogs.com/recordman/p/4568285.html
Copyright © 2011-2022 走看看