- 1.1 资料 <The Little Redis Book> ,最好的入门小册子,可以先于一切文档之前看,免费。作者Antirez的博客,Antirez维护的Redis推特。Redis 命令中文版, huangz同学的翻译。Redis设计与实现 ,又是huangz同学的巨作,深入了解内部实现机制。Redis 2.6源码中文注释版&... 1.1 资料 <The Little Redis Book> ,最好的入门小册子,可以先于一切文档之前看,免费。作者Antirez的博客,Antirez维护的Redis推特。Redis 命令中文版, huangz同学的翻译。Redis设计与实现 ,又是huangz同学的巨作,深入了解内部实现机制。Redis 2.6源码中文注释版&...
- 前言 redis和memcache的区别在面试中也经常会被提到,今天我们来看看redis与memcache的知识 概念 memcached: 一款开源的,高性能,分布式的内存系统 redis:一个开源的,key-value型的内存运行并支持持久化的NoSQL数据库。 他们俩共同点:从字面上看,有两个: 都是开源的 都是基于内存的 区别 他们在官网上... 前言 redis和memcache的区别在面试中也经常会被提到,今天我们来看看redis与memcache的知识 概念 memcached: 一款开源的,高性能,分布式的内存系统 redis:一个开源的,key-value型的内存运行并支持持久化的NoSQL数据库。 他们俩共同点:从字面上看,有两个: 都是开源的 都是基于内存的 区别 他们在官网上...
- 使用python来操作redis用法详解 1.1 2017.06.22 16:38* 字数 4875 阅读 96923评论 8喜欢 60 1、redis连接 redis提供两个类Redis和StrictRedis用于实现Redis的命令,StrictRedis用于实现大部分官方的命令,并使用官方的语法和命令,Redis是S... 使用python来操作redis用法详解 1.1 2017.06.22 16:38* 字数 4875 阅读 96923评论 8喜欢 60 1、redis连接 redis提供两个类Redis和StrictRedis用于实现Redis的命令,StrictRedis用于实现大部分官方的命令,并使用官方的语法和命令,Redis是S...
- 消费消息需要考虑: 会不会重复消费能不能避免重复消费重复消费了也别造成系统异常可以吗 使用MQ如何保证幂等性也是架构设计考虑的问题。 rabbitmq、rocketmq、kafka,都可能会出现消费重复消费,因为这个问题不是MQ自身保证的,是我们开发自己需要保证的。 何时重复消费? kafka有个offset概念,每个消息写进去,都有一个offset,代表他的... 消费消息需要考虑: 会不会重复消费能不能避免重复消费重复消费了也别造成系统异常可以吗 使用MQ如何保证幂等性也是架构设计考虑的问题。 rabbitmq、rocketmq、kafka,都可能会出现消费重复消费,因为这个问题不是MQ自身保证的,是我们开发自己需要保证的。 何时重复消费? kafka有个offset概念,每个消息写进去,都有一个offset,代表他的...
- 一块儿一块儿的讲解商品详情页的架构实现 1 缓存架构 第一块儿,要掌握的很好的,就是Redis架构 高并发,高可用,海量数据,备份,随时可以恢复,缓存架构如果要支撑这些要点,首当其冲地Redis就得支撑 每秒钟几十万的访问量QPS,99.99%的高可用性,TB级的海量的数据,备份和恢复,缓存架构就成功了一半了 最最简单的模式,无非就是存取Redis,存数据,取... 一块儿一块儿的讲解商品详情页的架构实现 1 缓存架构 第一块儿,要掌握的很好的,就是Redis架构 高并发,高可用,海量数据,备份,随时可以恢复,缓存架构如果要支撑这些要点,首当其冲地Redis就得支撑 每秒钟几十万的访问量QPS,99.99%的高可用性,TB级的海量的数据,备份和恢复,缓存架构就成功了一半了 最最简单的模式,无非就是存取Redis,存数据,取...
- Redis要搞高并发,就要把底层的缓存搞得很好。MySQL高并发也是通过一系列复杂分库分表。 一些电商的商品详情页,真正的超高并发,QPS上十万,甚至是百万,一秒钟百万的请求量。 光Redis是不够的,但是Redis是整个大型的缓存架构中,支撑高并发的架构里面,非常重要的一个环节: 首先,缓存中间件,缓存系统,必须能够支撑高并发再经过良好的整体的缓存架构的设计(多级缓... Redis要搞高并发,就要把底层的缓存搞得很好。MySQL高并发也是通过一系列复杂分库分表。 一些电商的商品详情页,真正的超高并发,QPS上十万,甚至是百万,一秒钟百万的请求量。 光Redis是不够的,但是Redis是整个大型的缓存架构中,支撑高并发的架构里面,非常重要的一个环节: 首先,缓存中间件,缓存系统,必须能够支撑高并发再经过良好的整体的缓存架构的设计(多级缓...
- 1 redis不可用是什么? 机器死了,宕机了 jvm进程oom了,挂了 机器cpu打满了,不工作了, hang死了 磁盘突然满了,系统各种IO报错了,不工作了 不可用 请求过来,什么都没有空了,没有任何的响应,系统run不起来了,也没法卖东西了。 各种原因,都可能导致你的系统就挂掉了,没法对外提供服务了。 一帮人,工程师,连夜抢修,但是,问题在于,在抢... 1 redis不可用是什么? 机器死了,宕机了 jvm进程oom了,挂了 机器cpu打满了,不工作了, hang死了 磁盘突然满了,系统各种IO报错了,不工作了 不可用 请求过来,什么都没有空了,没有任何的响应,系统run不起来了,也没法卖东西了。 各种原因,都可能导致你的系统就挂掉了,没法对外提供服务了。 一帮人,工程师,连夜抢修,但是,问题在于,在抢...
- Redis将serverCron作为时间事件来运行,确保它每隔一段时间自动运行一次。 serverCron需在Redis服务器运行期间一直定期运行,所以它是一个循环时间事件: serverCron 会一直定期执行,直到服务器关闭。 Redis 2.6 规定 serverCron 10次/s, 即每 100ms/次。 Redis 2.8 开始,用户可以通过修改 hz 选... Redis将serverCron作为时间事件来运行,确保它每隔一段时间自动运行一次。 serverCron需在Redis服务器运行期间一直定期运行,所以它是一个循环时间事件: serverCron 会一直定期执行,直到服务器关闭。 Redis 2.6 规定 serverCron 10次/s, 即每 100ms/次。 Redis 2.8 开始,用户可以通过修改 hz 选...
- 1 设置带过期时间的 key # 时间复杂度:O(1),最常用的方式 expire key seconds # 字符串独有的方式 setex(String key, int seconds, String value) 12345 除了string独有设置过期时间方法,其他类型都需要依靠expire方法来设置时间。 如果没有设置时间,那缓存就是永不过期。 如果设置... 1 设置带过期时间的 key # 时间复杂度:O(1),最常用的方式 expire key seconds # 字符串独有的方式 setex(String key, int seconds, String value) 12345 除了string独有设置过期时间方法,其他类型都需要依靠expire方法来设置时间。 如果没有设置时间,那缓存就是永不过期。 如果设置...
- 1 sdown和odown转换机制 两种失败状态 1.1 概念 sdown主观宕机 一个哨兵自己觉得一个master宕机odown客观宕机 quorum数量的哨兵都觉得一个master宕机 1.2 达成条件 sdown 一个哨兵ping一个master,超过is-master-down-after-millisecondsodown 一个哨兵在指定时... 1 sdown和odown转换机制 两种失败状态 1.1 概念 sdown主观宕机 一个哨兵自己觉得一个master宕机odown客观宕机 quorum数量的哨兵都觉得一个master宕机 1.2 达成条件 sdown 一个哨兵ping一个master,超过is-master-down-after-millisecondsodown 一个哨兵在指定时...
- 2 大Key 如果一个Key的Value特别大,那么可能会对Redis产生巨大的性能影响,因为Redis是单线程模型,对大Key进行查询或删除等操作,可能会引起Redis阻塞甚至是高可用切换。 应该如何查询Redis中的大Key,以及如何在设计上实现大Key的拆分呢? 2.1 单个K存储的V很大 key分类如下: 该key需要每次都整存整取 尝试将对象分拆成几... 2 大Key 如果一个Key的Value特别大,那么可能会对Redis产生巨大的性能影响,因为Redis是单线程模型,对大Key进行查询或删除等操作,可能会引起Redis阻塞甚至是高可用切换。 应该如何查询Redis中的大Key,以及如何在设计上实现大Key的拆分呢? 2.1 单个K存储的V很大 key分类如下: 该key需要每次都整存整取 尝试将对象分拆成几...
- 1 现在常见的Java工程师/架构师对缓存技术的了解和掌握程度 工作中都会用到一些缓存技术,redis/memcached基础使用,初步的集群知识 我面试过的人里,能掌握到很少的缓存架构的人,屈指可数,个位数,而且都是在大公司有过类似的大型复杂系统架构经验的人 2 缓存架构/技术掌握的不够,对你的发展带来了哪些阻碍? 2.1 工作中 如果你这块技术掌握不够,然... 1 现在常见的Java工程师/架构师对缓存技术的了解和掌握程度 工作中都会用到一些缓存技术,redis/memcached基础使用,初步的集群知识 我面试过的人里,能掌握到很少的缓存架构的人,屈指可数,个位数,而且都是在大公司有过类似的大型复杂系统架构经验的人 2 缓存架构/技术掌握的不够,对你的发展带来了哪些阻碍? 2.1 工作中 如果你这块技术掌握不够,然...
- 1 秒杀场景下的数据一致性问题 某商品库存10,A想买6,B想买5。 1.1 做梦 A先买走6,库存剩4,此时B应该无法购买5,给出数量不足提示 1.2 现实 AB获取到商品都剩10,A买走6,在A更新库存前,B又买走5,此时B更新库存,商品还剩5。 1.3 想当然地解决方案 给共享资源或对共享资源的操作加锁,来保证对资源的访问互斥。利用Reentran... 1 秒杀场景下的数据一致性问题 某商品库存10,A想买6,B想买5。 1.1 做梦 A先买走6,库存剩4,此时B应该无法购买5,给出数量不足提示 1.2 现实 AB获取到商品都剩10,A买走6,在A更新库存前,B又买走5,此时B更新库存,商品还剩5。 1.3 想当然地解决方案 给共享资源或对共享资源的操作加锁,来保证对资源的访问互斥。利用Reentran...
- 1 客户端优化 pipeline 批量操作 连接池应用 2 合理的淘汰机制 设置合理的内存大小设置合理的过期时间选择合适的淘汰策略 3 内存优化 https://redis.io/topics/memory-optimization 不同大小,底层数据结构不同: hash-max-ziplist-value 64 zset-max-ziplist-val... 1 客户端优化 pipeline 批量操作 连接池应用 2 合理的淘汰机制 设置合理的内存大小设置合理的过期时间选择合适的淘汰策略 3 内存优化 https://redis.io/topics/memory-optimization 不同大小,底层数据结构不同: hash-max-ziplist-value 64 zset-max-ziplist-val...
- 只要使用Redis缓存,就必然存在缓存和DB的数据一致性问题。若数据不一致,那么业务应用从缓存中读取的数据就不是最新数据,这会导致严重的错误。比如把电商商品的库存信息缓存在Redis,若库存信息不对,则业务层下单操作就可能出错,这是不能接受的。 为何缓存和DB数据会不一致 数据一致性是什么意思,“一致性”包含如下情况: 若缓存中有数据,则缓存的数据值需要和DB值相... 只要使用Redis缓存,就必然存在缓存和DB的数据一致性问题。若数据不一致,那么业务应用从缓存中读取的数据就不是最新数据,这会导致严重的错误。比如把电商商品的库存信息缓存在Redis,若库存信息不对,则业务层下单操作就可能出错,这是不能接受的。 为何缓存和DB数据会不一致 数据一致性是什么意思,“一致性”包含如下情况: 若缓存中有数据,则缓存的数据值需要和DB值相...
上滑加载中
推荐直播
-
Skill 构建 × 智能创作:基于华为云码道的 AI 内容生产提效方案2026/03/25 周三 19:00-20:00
余伟,华为云软件研发工程师/万邵业(万少),华为云HCDE开发者专家
本次直播带来两大实战:华为云码道 Skill-Creator 手把手搭建专属知识库 Skill;如何用码道提效 OpenClaw 小说文本,打造从大纲到成稿的 AI 原创小说全链路。技术干货 + OPC创作思路,一次讲透!
回顾中 -
码道新技能,AI 新生产力——从自动视频生成到开源项目解析2026/04/08 周三 19:00-21:00
童得力-华为云开发者生态运营总监/何文强-无人机企业AI提效负责人
本次华为云码道 Skill 实战活动,聚焦两大 AI 开发场景:通过实战教学,带你打造 AI 编程自动生成视频 Skill,并实现对 GitHub 热门开源项目的智能知识抽取,手把手掌握 Skill 开发全流程,用 AI 提升研发效率与内容生产力。
回顾中 -
华为云码道:零代码股票智能决策平台全功能实战2026/04/18 周六 10:00-12:00
秦拳德-中软国际教育卓越研究院研究员、华为云金牌讲师、云原生技术专家
利用Tushare接口获取实时行情数据,采用Transformer算法进行时序预测与涨跌分析,并集成DeepSeek API提供智能解读。同时,项目深度结合华为云CodeArts(码道)的代码智能体能力,实现代码一键推送至云端代码仓库,建立起高效、可协作的团队开发新范式。开发者可快速上手,从零打造功能完整的个股筛选、智能分析与风险管控产品。
回顾中
热门标签