随笔分类 -  Redis

Someting about Redis.
摘要:一、缓存穿透 1、缓存穿透理解 缓存穿透是指查询一个根本不存在的数据,缓存层和持久层都不会命中。在日常工作中出于容错的考虑,如果从持久层查不到数据则不写入缓存层,缓存穿透将导致不存在的数据每次请求都要到持久层去查询,失去了缓存保护后端持久的意义。(对于系统A,假设一秒 5000 个请求,结果其中 4 阅读全文
posted @ 2022-10-17 09:28 Mr.peter 阅读(147) 评论(0) 推荐(0) 编辑
摘要:使用云数据库Redis版实现即时通信场景中的多端同步 使用云数据库Redis版助力在线课堂应用 使用Redis在Web应用中实现会话管理 使用Redis实现多地容灾的会话管理 将MySQL数据迁移到Redis 游戏玩家积分排行榜 网上商城商品相关性分析 消息发布与订阅 管道传输 事务处理 解密Red 阅读全文
posted @ 2022-03-07 22:41 Mr.peter 阅读(39) 评论(0) 推荐(0) 编辑
摘要:原来这根本就不是错,只是一个提示而已 继续安装make install src/redis-server redis.conf 阅读全文
posted @ 2021-05-14 15:50 Mr.peter 阅读(4461) 评论(0) 推荐(0) 编辑
摘要:为什么用分布式锁? 系统 A 是一个电商系统,目前是一台机器部署,系统中有一个用户下订单的接口,但是用户下订单之前一定要去检查一下库存,确保库存足够了才会给用户下单。 由于系统有一定的并发,所以会预先将商品的库存保存在 Redis 中,用户下单的时候会更新 Redis 的库存。 此时系统架构如下: 阅读全文
posted @ 2020-12-20 16:28 Mr.peter 阅读(155) 评论(0) 推荐(0) 编辑
摘要:随着业务越来越复杂,应用服务都会朝着分布式、集群方向部署,而分布式CAP原则告诉我们, Consistency(一致性)、 Availability(可用性)、Partition tolerance(分区容错性),三者不可得 兼。 很多场景中,需要使用分布式事务、分布式锁等技术来保证数据最终一致性。 阅读全文
posted @ 2020-12-12 19:33 Mr.peter 阅读(342) 评论(0) 推荐(0) 编辑
摘要:关于Redis redis是一个开源的使用C语言编写的一个kv存储系统,是一个速度非常快的非关系远程内存数据库。它支持包括String、List、Set、Zset、hash五种数据结构。除此之外,通过复制、持久化和客户端分片等特性,用户可以很方便地将redis扩展成一个能够包含数百GB数据和每秒处理 阅读全文
posted @ 2020-07-21 15:18 Mr.peter 阅读(448) 评论(0) 推荐(0) 编辑
摘要:持久化 rdb全量 aof增量追加 Redis 提供了 RDB 和 AOF 两种持久化方式。 RDB 是把内存中的数据集以快照形式写入磁盘,实际操作是通过 fork 子进程执行,采用二进制压缩存储; AOF 是以文本日志的形式记录 Redis 处理的每一个写入或删除操作。 RDB 把整个 Redis 阅读全文
posted @ 2020-07-07 18:09 Mr.peter 阅读(143) 评论(0) 推荐(0) 编辑
摘要:String: String 类型是 Redis 中最常使用的类型,内部的实现是通过 SDS(Simple Dynamic String )来存储的。SDS 类似于 Java 中的 ArrayList,可以通过预分配冗余空间的方式来减少内存的频繁分配。 这是最简单的类型,就是普通的 set 和 ge 阅读全文
posted @ 2020-07-07 18:06 Mr.peter 阅读(304) 评论(0) 推荐(0) 编辑
摘要:淘汰策略 不管是本地缓存还是分布式缓存,为了保证较高性能,都是使用内存来保存数据,由于成本和内存限制,当存储的数据超过缓存容量时,需要对缓存的数据进行剔除。 一般的剔除策略有 FIFO 淘汰最早数据、LRU 剔除最近最少使用、和 LFU 剔除最近使用频率最低的数据几种策略。 noeviction:返 阅读全文
posted @ 2020-07-07 18:01 Mr.peter 阅读(283) 评论(0) 推荐(0) 编辑
摘要:1.Redis有哪些数据结构? 字符串String、字典Hash、列表List、集合Set、有序集合SortedSet。 如果你是Redis中高级用户,还需要加上下面几种数据结构HyperLogLog、Geo、Pub/Sub。 如果你说还玩过Redis Module,像BloomFilter,Red 阅读全文
posted @ 2019-09-16 13:43 Mr.peter 阅读(326) 评论(0) 推荐(0) 编辑
摘要:在/etc目录下找到redis.conf 将daemonize no 修改为 daemonize yes 再输入 redis-server /usr/local/etc/redis.conf redis-cli 阅读全文
posted @ 2019-08-05 14:31 Mr.peter 阅读(1046) 评论(0) 推荐(0) 编辑
摘要:1、字符串使用场景 a) 缓存功能 典型使用场景:Redis作为缓存层,MySQL作为存储层,绝大部分请求的数据都是从Redis中获取,由于Redis具有支撑高并发的特性,所以缓存通常能起到加速读写和降低后端压力的作用。 开发提示:与MySQL等关系型数据库不同的是,Redis没有命令空间,而且也没 阅读全文
posted @ 2019-07-19 14:23 Mr.peter 阅读(753) 评论(0) 推荐(0) 编辑
摘要:商品维度计数 对商品喜欢数,评论数,鉴定数,浏览数进行计数说起电商,肯定离不开商品,而附带商品有各种计数(喜欢数,评论数,鉴定数,浏览数,etc)Redis的命令都是原子性的,你可以轻松地利用INCR,DECR等命令来计数。 采用Redis 的类型: Hash. 如果你对redis数据类型不太熟悉, 阅读全文
posted @ 2019-02-01 17:09 Mr.peter 阅读(204) 评论(0) 推荐(0) 编辑
摘要:第一步,查看环境的信息。 第二步,根据线程是否安全、架构32位或64位下载redis扩展。 http://pecl.php.net/package-stats.php 第三步,php_redis.dll和php_redis.pdb放到PHP安装目录/ext这个文件夹下,重启PHPStudy。可以看到 阅读全文
posted @ 2018-03-09 11:24 Mr.peter 阅读(169) 评论(0) 推荐(0) 编辑
摘要:PHP 使用 Redis 安装 开始在 PHP 中使用 Redis 前, 我们需要确保已经安装了 redis 服务及 PHP redis 驱动,且你的机器上能正常使用 PHP。 接下来让我们安装 PHP redis 驱动:下载地址为:https://github.com/phpredis/phpre 阅读全文
posted @ 2017-03-28 17:08 Mr.peter 阅读(42366) 评论(1) 推荐(1) 编辑