
redis
Claroja
这个作者很懒,什么都没留下…
展开
-
redis 缓存模式
1) Cache Aside2) Read-through 通读3) Write-through 通写4) Write-behind caching5.总结模式:Read-throught + Cache aside构建一层抽象出来的缓存操作层,负责数据库查询和Redis缓存存取,在Flask的视图逻辑中直接操作缓存层工具。读写顺序:更新采用先更新数据库,再删除缓存...原创 2020-08-15 09:57:40 · 433 阅读 · 0 评论 -
redis 缓存 淘汰
1.LRULRU(Least recently used,最近最少使用)其核心思想是“如果数据最近被访问过,那么将来被访问的几率也更高”。基本思路新数据插入到列表头部;每当缓存命中(即缓存数据被访问),则将数据移到列表头部;当列表满的时候,将列表尾部的数据丢弃。2.LFULFU(Least Frequently Used 最近最少使用算法)它是基于“如果一个数据在最近一段时间内使用次数很少,那么在将来一段时间内被使用的可能性也很小”的思路。3.RedisRedis的内存淘汰策略是指在R原创 2020-08-14 21:18:23 · 614 阅读 · 0 评论 -
redis 缓存有效期
1.有效期 TTL (Time to live)设置有效期的作用:节省空间做到数据弱一致性,有效期失效后,可以保证数据的一致性2.Redis的过期策略1)定时过期每个设置过期时间的key都需要创建一个定时器,到过期时间就会立即清除。setex('a', 300, 'aval')优点:准确缺点:CPU消耗大2)惰性过期只有当访问一个key时,才会判断该key是否已过期,过期则清除。有点:CPU消耗少缺点:如果一个key一直不访问,就不会过期3)定期过期每隔一定的时间,会扫描一定数原创 2020-08-14 21:18:12 · 1947 阅读 · 0 评论 -
redis 缓存目标
1.数值验证码用户状态2.数据记录1.Caching at the object level以数据库对象的角度考虑, 应用更普遍user = User.query.filter_by(id=1).first()user -> User对象{ 'user_id':1, 'user_name': 'python', 'age': 28, 'introduction': ''}2.Caching at the database query level以数据库查询的角度原创 2020-08-14 21:17:59 · 130 阅读 · 0 评论 -
redis 缓存数据格式
1.序列化字符串setex('user:1:info', expiry, json.dumps(user_dict))优点存储字符串节省空间缺点序列化有时间开销更新不方便(一般直接删除)2.Redis的其他数据类型,如hash、set、zsethmset('user:1:info', user_dict)优点读写时不需要序列化转换可以更新内部数据缺点相比字符串,采用复合结构存储空间占用大...原创 2020-08-14 21:17:46 · 382 阅读 · 0 评论 -
redis 缓存
原创 2020-08-14 21:17:33 · 116 阅读 · 0 评论 -
Redis 集群
https://redis.io/topics/partitioning# redis 集群REDIS_CLUSTER = [ {'host': '127.0.0.1', 'port': '7000'}, {'host': '127.0.0.1', 'port': '7001'}, {'host': '127.0.0.1', 'port': '7002'},]from rediscluster import StrictRedisClusterredis_cluster原创 2020-08-14 21:17:08 · 108 阅读 · 0 评论 -
redis 主从复制
在redis安装后,会自带sentinel哨兵程序,修改sentinel.conf配置文件bind 127.0.0.1port 26380daemonize yeslogfile /var/log/redis-sentinel.logsentinel monitor mymaster 127.0.0.1 6380 2sentinel down-after-milliseconds mymaster 30000sentinel parallel-syncs mymaster 1sentinel原创 2020-08-14 21:16:57 · 119 阅读 · 0 评论 -
redis 持久化
redis可以将数据写入到磁盘中,在停机或宕机后,再次启动redis时,将磁盘中的备份数据加载到内存中恢复使用。1.快照redis可以将内存中的数据写入磁盘进行持久化。在进行持久化时,redis会创建子进程来执行。1)定期触发redis的配置文件 # save "" save 900 1 save 300 10 save 60 100002)BGSAVE执行BGSAVE命令,手动3)SHUTDOWN关机命令时 触发2.AOF 追加文件持久化redis可以将执行的所有原创 2020-08-14 21:16:40 · 122 阅读 · 0 评论 -
Redis
1.Redis可以理解为一个大字典。{ 'a': 'xxx', 'b': {"foo": "100", "":"", xx}, 'c': ["", "","" ], 有序 可以重复 'd': set(), 无序 不重复 'e': zset() 有序 值不重复 分数可以相同 值:权重 分数score "c": 19 "python":100 "java": 100 "c": 0 "python":0 "java": 0 相同为0 排序按值的字符顺序}原创 2020-08-14 21:16:21 · 100 阅读 · 0 评论 -
Redis事务
1.事务Redis提供了一定的事务支持,可以保证一组操作原子执行不被打断multi 开启事务exec 执行事务Redis Cluster 集群不支持事务127.0.0.1:6379> multiOK127.0.0.1:6379> set a 100QUEUED127.0.0.1:6379> get aQUEUED127.0.0.1:6379> exec1) OK2) "100"但是如果执行中出现错误,事务不能回滚,Redis未提供回滚支持。127.0.原创 2020-08-14 21:16:03 · 122 阅读 · 0 评论 -
Redis 安装与配置
安装sudo apt-get install redis-server查看redis状态service redis status配置:/et/redis/redis.conf1.远程链接注释掉bind 127.0.0.12.设置密码requirepass 123456参考:https://www.cnblogs.com/wxjnew/p/9189191.html...原创 2019-11-14 21:34:39 · 104 阅读 · 0 评论 -
Redis 数据结构
数据类型:字符串类型 string哈希类型 hash : map格式列表类型 list : linkedlist格式。支持重复元素集合类型 set : 不允许重复元素有序集合类型 sortedset:不允许重复元素,且元素有顺序1.字符串类型 string存储: set key value127.0.0.1:6379> set username wangOK...原创 2019-09-29 22:40:55 · 200 阅读 · 0 评论 -
Redis
参考:https://segmentfault.com/a/1190000015191422原创 2019-09-29 22:40:40 · 148 阅读 · 0 评论