using Admin.Core.Common; using StackExchange.Redis; using System; using System.Collections.Generic; using System.Threading.Tasks; namespace Admin.Core.Extensions { /// /// Redis缓存接口 /// public interface IRedisBasketRepository { /// /// 获取服务基础信息 /// RedisBaseView GetBaseInfo(); /// /// 缓存监控 /// List GetAllKes(); /// /// 节点状态 /// /// List GetPointStatus(); /// /// 获取 Reids 缓存值 /// /// /// Task GetValue(string key); /// /// 获取值,并序列化 /// /// /// /// Task Get(string key); /// /// 保存 /// /// /// /// 缓存过期时间,单位:分钟 /// Task SetStr(string key, string value, int timeSpan = 0); /// /// 保存-永不过期 /// /// /// /// 缓存过期时间,单位:分钟 /// Task SetStrL(string key, string value); /// /// 保存 /// /// /// /// 缓存过期时间,单位:分钟 /// Task SetObj(string key, object value, int timeSpan = 0); /// /// 保存-永不过期 /// /// /// /// 缓存过期时间,单位:分钟 /// Task SetObjL(string key, object value); /// /// 判断是否存在 /// /// /// Task Exist(string key); /// /// 移除某一个缓存值 /// /// /// Task Remove(string key); /// /// 全部清除 /// /// Task Clear(); /// /// 根据key获取RedisValue /// /// /// /// Task ListRangeAsync(string redisKey); /// /// 在列表头部插入值。如果键不存在,先创建再插入值 /// /// /// /// Task ListLeftPushAsync(string redisKey, string redisValue, int db = -1); /// /// 在列表尾部插入值。如果键不存在,先创建再插入值 /// /// /// /// Task ListRightPushAsync(string redisKey, string redisValue, int db = -1); /// /// 在列表尾部插入数组集合。如果键不存在,先创建再插入值 /// /// /// /// Task ListRightPushAsync(string redisKey, IEnumerable redisValue, int db = -1); /// /// 移除并返回存储在该键列表的第一个元素 反序列化 /// /// /// Task ListLeftPopAsync(string redisKey, int db = -1) where T : class; /// /// 移除并返回存储在该键列表的最后一个元素 反序列化 /// 只能是对象集合 /// /// /// Task ListRightPopAsync(string redisKey, int db = -1) where T : class; /// /// 移除并返回存储在该键列表的第一个元素 /// /// /// /// Task ListLeftPopAsync(string redisKey, int db = -1); /// /// 移除并返回存储在该键列表的最后一个元素 /// /// /// /// /// Task ListRightPopAsync(string redisKey, int db = -1); /// /// 列表长度 /// /// /// /// Task ListLengthAsync(string redisKey, int db = -1); /// /// 返回在该列表上键所对应的元素 /// /// /// Task> ListRangeAsync(string redisKey, int db = -1); /// /// 根据索引获取指定位置数据 /// /// /// /// /// /// Task> ListRangeAsync(string redisKey, int start, int stop, int db = -1); /// /// 删除List中的元素 并返回删除的个数 /// /// key /// 元素 /// 大于零 : 从表头开始向表尾搜索,小于零 : 从表尾开始向表头搜索,等于零:移除表中所有与 VALUE 相等的值 /// /// Task ListDelRangeAsync(string redisKey, string redisValue, long type = 0, int db = -1); /// /// 清空List /// /// /// Task ListClearAsync(string redisKey, int db = -1); } }