- 消息大小考虑 crc16()一共可以有: 2^16 -1=65535 1 不同的余数,代表bitmap 有 65535 bit。所以bitmap的大小可以计算为 65535 / 8 (8bit/byte)/1024(1k)=7.99 Kbytes 1 尽管crc16能得到65535个值,但redis选择16384个slot,是因为16384的消息只占用了2k,... 消息大小考虑 crc16()一共可以有: 2^16 -1=65535 1 不同的余数,代表bitmap 有 65535 bit。所以bitmap的大小可以计算为 65535 / 8 (8bit/byte)/1024(1k)=7.99 Kbytes 1 尽管crc16能得到65535个值,但redis选择16384个slot,是因为16384的消息只占用了2k,...
- 使用防重复机制的背景1.由于用户误操作,多次点击表单提交按钮。2.由于网速等原因造成页面卡顿,用户重复刷新提交页面。3.黑客或恶意用户使用postman等工具重复恶意提交表单(攻击网站)。这些情况都会导致表单重复提交,造成数据重复,增加服务器负载,严重甚至会造成服务器宕机。因此有效防止表单重复提交有一定的必要性。解决方案针对目前比较流行的分布式系统,结合在项目实施过程中遇到的问题,以及在解决... 使用防重复机制的背景1.由于用户误操作,多次点击表单提交按钮。2.由于网速等原因造成页面卡顿,用户重复刷新提交页面。3.黑客或恶意用户使用postman等工具重复恶意提交表单(攻击网站)。这些情况都会导致表单重复提交,造成数据重复,增加服务器负载,严重甚至会造成服务器宕机。因此有效防止表单重复提交有一定的必要性。解决方案针对目前比较流行的分布式系统,结合在项目实施过程中遇到的问题,以及在解决...
- Memcached prepend 命令用于向已存在 key(键) 的 value(数据值) 前面追加数据 。语法:prepend 命令的基本语法格式如下:prepend key flags exptime bytes [noreply]value参数说明如下:key:键值 key-value 结构中的 key,用于查找缓存值。flags:可以包括键值对的整型参数,客户机使用它存储关于键值对... Memcached prepend 命令用于向已存在 key(键) 的 value(数据值) 前面追加数据 。语法:prepend 命令的基本语法格式如下:prepend key flags exptime bytes [noreply]value参数说明如下:key:键值 key-value 结构中的 key,用于查找缓存值。flags:可以包括键值对的整型参数,客户机使用它存储关于键值对...
- Memcached append 命令用于向已存在 key(键) 的 value(数据值) 后面追加数据 。语法:append 命令的基本语法格式如下:append key flags exptime bytes [noreply]value参数说明如下:key:键值 key-value 结构中的 key,用于查找缓存值。flags:可以包括键值对的整型参数,客户机使用它存储关于键值对的额外... Memcached append 命令用于向已存在 key(键) 的 value(数据值) 后面追加数据 。语法:append 命令的基本语法格式如下:append key flags exptime bytes [noreply]value参数说明如下:key:键值 key-value 结构中的 key,用于查找缓存值。flags:可以包括键值对的整型参数,客户机使用它存储关于键值对的额外...
- 业务随着用户量持续增长,Redis 实例的数据量往往会快速膨胀。很多企业缓存业务里,超过 70% 的数据属于冷数据,比如历史订单、过期日志、归档用户信息,长期只查询很少更新。如果全部使用高性能内存存储,实例成本会持续走高;简单拆分实例又会带来数据迁移、业务改代码、运维复杂度上升等一系列麻烦。华为云 GaussDB (for Redis) 混合存储能力,把热数据放在内存保障访问速度,冷数据下沉... 业务随着用户量持续增长,Redis 实例的数据量往往会快速膨胀。很多企业缓存业务里,超过 70% 的数据属于冷数据,比如历史订单、过期日志、归档用户信息,长期只查询很少更新。如果全部使用高性能内存存储,实例成本会持续走高;简单拆分实例又会带来数据迁移、业务改代码、运维复杂度上升等一系列麻烦。华为云 GaussDB (for Redis) 混合存储能力,把热数据放在内存保障访问速度,冷数据下沉...
- 约课抢课本质是有限时段名额的并发扣减。热门教练时段一开放就超卖、师生时间撞车,根因都是校验余量与占用名额不是原子操作。本文用Redis Lua原子预占、数据库唯一约束兜底、时间区间重叠检测、取消幂等回补四步,解决约课超卖与排课冲突,附核心代码与5个踩坑。 约课抢课本质是有限时段名额的并发扣减。热门教练时段一开放就超卖、师生时间撞车,根因都是校验余量与占用名额不是原子操作。本文用Redis Lua原子预占、数据库唯一约束兜底、时间区间重叠检测、取消幂等回补四步,解决约课超卖与排课冲突,附核心代码与5个踩坑。
- 本文不展开产品选型,只聚焦工程层面如何把方案做稳。现状与问题在原有架构下,核心瓶颈集中在 缓存命中率:镜像预热 + 实例分级。随着业务量增长,该问题在高峰期被进一步放大。方案设计整体思路是用 GaussDB 替换原方案中耦合较重的部分,把 冷启动 拆成独立可水平扩展的单元。关键点有三:1. 改用二进制协议减少带宽2. 边界条件单独处理,避免主链路被污染3. 保留灰度开关,便于回滚落地与验证分... 本文不展开产品选型,只聚焦工程层面如何把方案做稳。现状与问题在原有架构下,核心瓶颈集中在 缓存命中率:镜像预热 + 实例分级。随着业务量增长,该问题在高峰期被进一步放大。方案设计整体思路是用 GaussDB 替换原方案中耦合较重的部分,把 冷启动 拆成独立可水平扩展的单元。关键点有三:1. 改用二进制协议减少带宽2. 边界条件单独处理,避免主链路被污染3. 保留灰度开关,便于回滚落地与验证分...
- 本文结合近期项目实践,整理了一套相对通用的思路,希望对同行有所启发。现状与问题在原有架构下,核心瓶颈集中在 写入链路:热点 key 打散到多分片。随着业务量增长,该问题在高峰期被进一步放大。方案设计整体思路是用 Redis 替换原方案中耦合较重的部分,把 缓存命中率 拆成独立可水平扩展的单元。关键点有三:1. 热点 key 打散到多分片2. 边界条件单独处理,避免主链路被污染3. 保留灰度开... 本文结合近期项目实践,整理了一套相对通用的思路,希望对同行有所启发。现状与问题在原有架构下,核心瓶颈集中在 写入链路:热点 key 打散到多分片。随着业务量增长,该问题在高峰期被进一步放大。方案设计整体思路是用 Redis 替换原方案中耦合较重的部分,把 缓存命中率 拆成独立可水平扩展的单元。关键点有三:1. 热点 key 打散到多分片2. 边界条件单独处理,避免主链路被污染3. 保留灰度开...
- 本文不展开产品选型,只聚焦工程层面如何把方案做稳。现状与问题在原有架构下,核心瓶颈集中在 连接池:预拉取减少按需加载抖动。随着业务量增长,该问题在高峰期被进一步放大。方案设计整体思路是用 CCE 替换原方案中耦合较重的部分,把 写入链路 拆成独立可水平扩展的单元。关键点有三:1. 预拉取减少按需加载抖动2. 边界条件单独处理,避免主链路被污染3. 保留灰度开关,便于回滚落地与验证分两个阶段灰... 本文不展开产品选型,只聚焦工程层面如何把方案做稳。现状与问题在原有架构下,核心瓶颈集中在 连接池:预拉取减少按需加载抖动。随着业务量增长,该问题在高峰期被进一步放大。方案设计整体思路是用 CCE 替换原方案中耦合较重的部分,把 写入链路 拆成独立可水平扩展的单元。关键点有三:1. 预拉取减少按需加载抖动2. 边界条件单独处理,避免主链路被污染3. 保留灰度开关,便于回滚落地与验证分两个阶段灰...
- 背景:线上业务在流量峰值时出现明显抖动,借此机会做一次完整复盘。现状与问题在原有架构下,核心瓶颈集中在 写入链路:本地缓存 + 分布式缓存两级。随着业务量增长,该问题在高峰期被进一步放大。方案设计整体思路是用 Nginx 替换原方案中耦合较重的部分,把 连接池 拆成独立可水平扩展的单元。关键点有三:1. 本地缓存 + 分布式缓存两级2. 边界条件单独处理,避免主链路被污染3. 保留灰度开关,... 背景:线上业务在流量峰值时出现明显抖动,借此机会做一次完整复盘。现状与问题在原有架构下,核心瓶颈集中在 写入链路:本地缓存 + 分布式缓存两级。随着业务量增长,该问题在高峰期被进一步放大。方案设计整体思路是用 Nginx 替换原方案中耦合较重的部分,把 连接池 拆成独立可水平扩展的单元。关键点有三:1. 本地缓存 + 分布式缓存两级2. 边界条件单独处理,避免主链路被污染3. 保留灰度开关,...
- 【玩转华为云】 在互联网业务里,Redis 几乎是标配缓存组件,很多小程序、后台管理系统、电商业务都会用 DCS Redis 做热点数据缓存、分布式锁、会话存储。上线一段时间后,不少团队会遇到突发卡顿、请求超时、节点 CPU 飙升,查来查去,根源基本都是热 Key 和大 Key。很多中小团队没有专门的缓存工程师,出现故障只能临时重启实例,治标不治本。本文基于华为云 DCS 的监控工具,分享定... 【玩转华为云】 在互联网业务里,Redis 几乎是标配缓存组件,很多小程序、后台管理系统、电商业务都会用 DCS Redis 做热点数据缓存、分布式锁、会话存储。上线一段时间后,不少团队会遇到突发卡顿、请求超时、节点 CPU 飙升,查来查去,根源基本都是热 Key 和大 Key。很多中小团队没有专门的缓存工程师,出现故障只能临时重启实例,治标不治本。本文基于华为云 DCS 的监控工具,分享定...
- 单机限流挡不住多实例,各实例自己计数总量就对不上,用 Redis 加 Lua 脚本把判断和扣减做成原子操作,含令牌桶实现、集成示例和算法对比。 单机限流挡不住多实例,各实例自己计数总量就对不上,用 Redis 加 Lua 脚本把判断和扣减做成原子操作,含令牌桶实现、集成示例和算法对比。
- 摘要:网上查小红书薪资,R4、R5、R6 依然满天飞,R5 百万年包、R6 接近 200 万的数字也很常见。但问题是,小红书早在 2024 年就取消了 R 职级。所以到了 2026 年,这些数据到底还能不能参考?现在应该怎么判断一个岗位的级别和薪资?如果准备面试小红书测试开发,又应该重点准备什么?这篇文章把这几个问题放在一起讲清楚。很多人第一次查小红书薪资,都会看到这样一张表:R4,月薪大约... 摘要:网上查小红书薪资,R4、R5、R6 依然满天飞,R5 百万年包、R6 接近 200 万的数字也很常见。但问题是,小红书早在 2024 年就取消了 R 职级。所以到了 2026 年,这些数据到底还能不能参考?现在应该怎么判断一个岗位的级别和薪资?如果准备面试小红书测试开发,又应该重点准备什么?这篇文章把这几个问题放在一起讲清楚。很多人第一次查小红书薪资,都会看到这样一张表:R4,月薪大约...
- 用DCS Redis给应用加缓存层,讲清实例类型/版本选型,附应用接入代码与加缓存前后压测对比,并提醒缓存穿透/击穿/雪崩、与数据库一致性等坑。 用DCS Redis给应用加缓存层,讲清实例类型/版本选型,附应用接入代码与加缓存前后压测对比,并提醒缓存穿透/击穿/雪崩、与数据库一致性等坑。
- 缓存是把双刃剑。聊聊缓存读写的标准姿势(Cache Aside)、怎么防穿透/击穿/雪崩,以及过期时间打散这种不起眼但救命的细节。华为云 GaussDB(for Redis) 也是同一套用法。配一张命中/未命中流程图。 缓存是把双刃剑。聊聊缓存读写的标准姿势(Cache Aside)、怎么防穿透/击穿/雪崩,以及过期时间打散这种不起眼但救命的细节。华为云 GaussDB(for Redis) 也是同一套用法。配一张命中/未命中流程图。
上滑加载中
推荐直播
-
华为云码道Agent集成与鸿蒙实战2026/08/11 周二 19:00-21:00
王一男-华为云码道产品规划专家;李炎-华为云码道产品专家;彭江敏-华为云鸿蒙端云一体化开发专家
本次直播带你解读华为云码道7月份产品新特性、新功能。更有专家演示码道Agent Space × 钉钉机器集成实战,从0到1打通消息通道;码道鸿蒙端云一体化实战,快速搭建员工签到系统。
回顾中 -
华为云开发者AI素养直播课·第五期2026/09/04 周五 16:00-18:00
林华鼎-华为云AI开发者运营负责人;蒋春阳-华为云AI开发者案例开发专家
本期直播内容: AI工具体验营 · 第5-8课连讲。Agent-Team 多智能体协作完成毕业设计实践
回顾中 -
华为云开发者AI素养ClassRoom·第六期2026/09/08 周二 19:00-20:00
樊渊-2026华为软件挑战赛冠军
高手来了:看软挑高手解析二维排样问题—从工业难题到算法突破
回顾中
热门标签