コード例 #1
0
        public static bool Update(PlayerbasisModel model)
        {
            string redisKey = RedisKeyHelper.GetRedisKeyName(RedisKeyConfig.Playerbasis, model.PlayerId.ToString());

            redisCacheHelper.StringSet(redisKey, model, CommonConfig.DefRedisExpiry);
            return(Update(model, nameof(model.PlayerId)));
        }
コード例 #2
0
        public static bool InsertSuccess(AtlasscheduleModel model)
        {
            string redisKey = RedisKeyHelper.GetRedisKeyName(RedisKeyConfig.AtlasSchedule, model.PlayerId.ToString());

            redisCacheHelper.StringSet(redisKey, model, CommonConfig.DefRedisExpiry);
            return(BaseBLL.InsertSuccess(model));
        }
コード例 #3
0
        public static bool StartCacheRedisCheck()
        {
            bool canStart = false;

            try
            {
                RedisCacheHelper redisCacheHelper = new RedisCacheHelper();


                //思路:getset使用单个redis,pubsub使用redis集群

                //直接看redis官网

                //百度搜索:ServiceStack.Redis.RedisResponseException
                //https://stackoverflow.com/questions/36436212/unexpected-reply-on-high-volume-scenario-using-servicestack-redis

                //https://stackoverflow.com/questions/30223105/moved-exception-with-redis-cluster-stackexchange-redis
                //ClusterConfiguration clusterConfiguration
                //ClusterNode
                //ConfigurationOptions


                //设置哨兵  sentinel
                //RedisSentinel

                //-------------------------------
                //▲百度搜索:redis 哨兵 主从 集群
                //-------------------------------

                //RedisSentinelResolver
                // SentinelInfo


                string redisKey = RedisKeyHelper.GetRedisKeyName(RedisKeyConfig.Test, 1.ToString());

                redisCacheHelper.StringSet(redisKey, new TestResp {
                    PlayerId = 1
                }, CommonConfig.DefRedisExpiry);

                var res = redisCacheHelper.StringGet <TestResp>(redisKey);

                canStart = true;
            }
            catch (Exception ex)
            {
                Console.WriteLine("【redis】异常23323:" + ex.ToString());
            }
            return(canStart);
        }
コード例 #4
0
        public static List <GoodsModel> GetListAll(int playerId, int belongsTo, out bool fromCache)
        {
            fromCache = false;
            string redisKey = RedisKeyHelper.GetRedisKeyName(RedisKeyConfig.Goods, playerId.ToString(), belongsTo.ToString());
            var    list     = redisCacheHelper.StringGet <List <GoodsModel> >(redisKey);

            if (list != null)
            {
                fromCache = true;
                return(list);
            }
            else
            {
                list = GoodsDAL.GetListAll(playerId, belongsTo);
                redisCacheHelper.StringSet(redisKey, list, CommonConfig.DefRedisExpiry);
                return(list);
            }
        }
コード例 #5
0
        public static PlayerbasisModel GetSingleOrDefault(int playerId, out bool fromCache)
        {
            fromCache = false;
            string redisKey   = RedisKeyHelper.GetRedisKeyName(RedisKeyConfig.Playerbasis, playerId.ToString());
            var    cacheModel = redisCacheHelper.StringGet <PlayerbasisModel>(redisKey);

            if (cacheModel != null)
            {
                fromCache = true;
                return(cacheModel);
            }
            else
            {
                var model = new PlayerbasisModel();
                model = GetSingleOrDefault(model, new KeyValue <int> {
                    Key = nameof(model.PlayerId), Value = playerId
                });
                redisCacheHelper.StringSet(redisKey, model, CommonConfig.DefRedisExpiry);
                return(model);
            }
        }