很多大型电商网站、视频直播和游戏应用等,存在大规模数据访问,对数据查询效率要求高,且数据结构简单,不涉及太多关联查询。

这种场景使用Redis,在速度上对传统磁盘数据库有很大优势,能够有效减少数据库磁盘IO,提高数据查询效率,减轻管理维护工作量,降低数据库存储成本。华为云分布式缓存Redis5.0对传统磁盘数据库是一个重要的补充,成为了互联网应用,尤其是支持高并发访问的互联网应用必不可少的基础服务之一。

以下举几个典型样例:

(电商网站)秒杀抢购

电商网站的商品类目、推荐系统以及秒杀抢购活动,适宜使用Redis缓存数据库。

例如秒杀抢购活动,并发高,对于传统关系型数据库来说访问压力大,需要较高的硬件配置(如磁盘IO)支撑。Redis数据库,单节点QPS支撑能达到10万,轻松应对秒杀并发。实现秒杀和数据枷锁的命令简单,使用SET、GET、DEL、RPUSH等命令即可。

加锁部分,可参考最佳实践:使用DCS实现分布式锁

(视频直播)消息弹幕

直播间的在线用户列表,礼物排行榜,弹幕消息等信息,都适合使用Redis中的SortedSet结构进行存储。

例如弹幕消息,可使用ZREVRANGEBYSCORE排序返回,在Redis5.0中,新增了zpopmax,zpopmin命令,更加方便消息处理。

(游戏应用)游戏排行榜

在线游戏一般涉及排行版实时展现,比如列出当前得分最高的10个用户。使用Redis的有序集合存储用户排行榜非常合适,有序集合使用非常简单,提供多达20个操作集合的命令。

可参考最佳实践:使用DCS实现排行榜功能

(社交APP)返回最新评论/回复

在web类应用中,常有“最新评论”之类的查询,如果使用关系型数据库,往往涉及到按评论时间逆排序,随着评论越来越多,排序效率越来越低,且并发频繁。

使用Redis的List(链表),例如存储最新1000条评论,当请求的评论数在这个范围,就不需要访问磁盘数据库,直接从缓存中返回,减少数据库压力的同时,提升APP的响应速度。

本文内容来自华为云帮助中心

最新文章

  1. Enterprise Solution 开源项目资源汇总 Visual Studio Online 源代码托管 企业管理软件开发框架
  2. Hololens 手势事件执行顺序
  3. 搭建OpenStack,kvm环境准备
  4. json相关的一些用法
  5. App Widget简单应用
  6. 【转】larbin主要代码说明
  7. GS1已分配给国家(地区)编码组织的前缀码
  8. Learning Lua Programming (3) iMac下搭建Lua脚本最好的编码环境(代码补全,编译运行)
  9. OCP-1Z0-053-V12.02-512题 【转】
  10. crtmpserver初探
  11. android studio 报错,google后无果
  12. 基于Groovy+HttpRestful的超轻量级的接口测试用例配置的设计方案及DEMO实现
  13. Facebook内部报告:争取青少年用户的鸡贼小技巧
  14. [翻译]CSS3 Media Queries
  15. 1101: [POI2007]Zap
  16. Redis(三)
  17. 一道money计算题引发的思考
  18. 一 创建github账号以及上传工程到github
  19. swift 可变參数
  20. algo: 冒泡排序(Java实现)

热门文章

  1. mysql 全量备份与增量备份
  2. rman基础知识理解(一)
  3. C# 自定义特性Attribute
  4. 【mySQL】 - 主键
  5. win 10 如何关闭自动更新
  6. vue--slot插槽的使用方式
  7. 课时17.WebStorm安装(理解)
  8. Python爬虫——Scrapy整合Selenium案例分析(BOSS直聘)
  9. web安全入门笔记
  10. C# 对DataTable的简单操作