替你踩过Redis缓存的坑,奉上使用规范和监控方法(一)
  

marco 728

{{ttag.title}}

一、前言


在互联网应用中,缓存成为高并发架构的关键组件。本文主要介绍缓存使用的典型场景、实操案例分析、Redis使用规范及常规Redis监控。

二、常见缓存对比


常见的缓存方案:本地缓存包括HashMap/ConcurrentHashMap、Ehcache、Memcache、Guava Cache等,缓存中间件包括Redis、Tair等。


三、Redis使用场景


1、计数

Redis实现快速计数及缓存功能。
例如:视频或直播在线观看人数,用户每播放一次,就会自增1。

2、Session集中管理

Session可以存储在应用服务是JVM中,但这一种方案会有一致性的问题,还有高并发下,会引发JVM内存溢出。Redis将用户的Session集中管理,这种情况下只要保证Redis的高可用和扩展性,每次用户更新或查询登录都直接从Redis中信息获取。

3、限速

例如:高并发的秒杀活动,使用incrby命令实现原子性递增。
例如:业务要求用户一分钟内,只能获取5次验证码。

4、排行榜

关系型数据库在排行榜方面查询速度普遍偏慢,所以可以借助redis的SortedSet进行热点数据的排序。

比如在项目中,如果需要统计主播的吸金排行榜,可以以主播的id作为member, 当天打赏的活动礼物对应的热度值作为 score, 通过zrangebyscore就可以获取主播活动日榜。

5、分布式锁

在实际的多进程并发场景下,使用分布式锁来限制程序的并发执行。多用于防止高并发场景下,缓存被击穿的可能。

分布式锁的实际就是"占坑",当另一个进程来执行setnx时,发现标识位已经为1,只好放弃或者等待。

打赏鼓励作者,期待更多好文!

打赏
暂无人打赏

发表新帖
热门标签
全部标签>
每日一问
2024年技术争霸赛
技术盲盒
技术笔记
干货满满
信服课堂视频
产品连连看
新版本体验
技术晨报
功能体验
秒懂零信任
每周精选
2023技术争霸赛专题
GIF动图学习
技术咨询
安全攻防
信服圈儿
通用技术
问题分析处理
运维工具
华北区交付直播
答题自测
在线直播
安装部署配置
原创分享
深信服技术支持平台
社区帮助指南
天逸直播
以战代练
自助服务平台操作指引
齐鲁TV
北京区每日一练
畅聊IT
专家问答
技术圆桌
MVP
网络基础知识
升级
上网策略
测试报告
日志审计
流量管理
每日一记
云计算知识
用户认证
解决方案
sangfor周刊
VPN 对接
项目案例
SANGFOR资讯
专家分享
技术顾问
信服故事
SDP百科
标准化排查
功能咨询
终端接入
授权
设备维护
资源访问
地址转换
虚拟机
存储
迁移
加速技术
排障笔记本
产品预警公告
玩转零信任
S豆商城资讯
技术争霸赛
「智能机器人」
追光者计划
答题榜单公布
纪元平台
卧龙计划
华北区拉练
山东区技术晨报
文档捉虫活动

本版版主

12
185
6

发帖

粉丝

关注

本版达人

LoveTec...

本周分享达人

新手24116...

本周提问达人