1.前言

  • 实时性比较高的那块数据,比如说库存,销量之类的这种数据,我们采取的实时的缓存+数据库双写的技术方案,双写一致性保障的方案

  • 实时性要求不高的数据,比如说商品的基本信息,等等,我们采取的是三级缓存架构的技术方案,就是说由一个专门的数据生产的服务,去获取整个商品详情页需要的各种数据,经过处理后,将数据放入各级缓存中,每一级缓存都有自己的作用

2.商品详情页分析

2.1 大型电商网站中的商品详情页的数据结构分析

  1. 商品的基本信息
    标题:【限时直降】Apple/苹果 iPhone 7 128G 全网通4G智能手机正品
    短描述:限时优惠 原封国行 正品保障
    颜色:
    存储容量
    图片列表
    规格参数

  2. 其他信息:店铺信息,分类信息,等等,非商品维度的信息

  3. 商品介绍:放缓存,看一点,ajax异步从缓存加载一点,不放我们这里讲解

  4. 实时信息:实时广告推荐、实时价格、实时活动推送,等等,ajax加载

  5. 商品的基本信息,分类放到缓存中,每次请求过来,动态从缓存中取数据,然后动态渲染到模板中。数据放缓存,性能高,动态渲染模板,灵活性好

2.2 大型缓存全量更新问题

  • 网络耗费的资源大
  • 每次对redis都存取大数据,对redis的压力也比较大
    (1) redis的性能和吞吐量能够支撑到多大,基本跟数据本身的大小有很大的关系
    (2) 如果数据越大,那么可能导致redis的吞吐量就会急剧下降

2.3 缓存维度化解决方案

  • 维度:商品维度,商品分类维度,商品店铺维度

  • 不同的维度,可以看做是不同的角度去观察一个东西,那么每个商品详情页中,都包含了不同的维度数据

  • 如果不维度化,就导致多个维度的数据混合在一个缓存value中。但是不同维度的数据,可能更新的频率都大不一样
    比如说,现在只是将1000个商品的分类批量调整了一下,但是如果商品分类的数据和商品本身的数据混杂在一起。那么可能导致需要将包括商品在内的大缓存value取出来,进行更新,再写回去,就会很坑爹,耗费大量的资源,redis压力也很大

  • 如果我们队对缓存进行维度化
    将每个维度的数据都存一份,比如说商品维度的数据存一份,商品分类的数据存一份,商品店铺的数据存一份。那么在不同的维度数据更新的时候,只要去更新对应的维度就可以了

亿级流量电商详情页系统实战-28.商品详情页结构分析、缓存全量更新问题以及缓存维度化解决方案相关推荐

  1. 亿级流量电商详情页系统实战:缓存架构+高可用服务架构+微服务架构

    <缓存架构+高可用服务架构+微服务架构>深入讲解了亿级流量电商详情页系统的完整大型架构.同时最重要的是,在完全真实的大型电商详情页系统架构下,全流程实战了整套微服务架构,包含了基于领域驱动 ...

  2. 19.亿级流量电商详情页系统实战---总结

    文章目录 1.亿级流量电商网站的商品详情页系统架构 2.redis企业级集群架构 3.多级缓存架构设计 4.数据库+缓存双写一致性解决方案 5.缓存维度化拆分解决方案 6.缓存命中率提升解决方案 7. ...

  3. 大型电商架构亿级流量电商详情页系统--实战 服务降级

    86_电商网站的商品详情页缓存服务业务背景以及框架结构说明 我们这个课程,基于hystrix,如何来构建高可用的分布式系统的架构,项目实战 模拟真实业务的这么一个小型的项目,来全程贯穿,用这个项目中的 ...

  4. 大型电商架构亿级流量电商详情页系统实战-缓存架构+高可用服务架构+微服务架构(七)

    文章目录 八十九.高并发场景下恐怖的缓存雪崩现象以及导致系统全盘崩溃的后果 九十.缓存雪崩的基于事前+事中+事后三个层次的完美解决方案 九十一.基于hystrix完成对redis访问的资源隔离以避免缓 ...

  5. 最新亿级流量电商详情页系统的大型高并发与高可用缓存架构实战第一版附全套资料

    课程介绍(非升级版) 对于高并发的场景来说,比如电商类,o2o,门户,等等互联网类的项目,缓存技术是Java项目中最常见的一种应用技术.然而,行业里很多朋友对缓存技术的了解与掌握,仅仅停留在掌握red ...

  6. 亿级流量电商详情页系统的大型高并发与高可用缓存架构实战

    2019独角兽企业重金招聘Python工程师标准>>> 对于高并发的场景来说,比如电商类,o2o,门户,等等互联网类的项目,缓存技术是Java项目中最常见的一种应用技术.然而,行业里 ...

  7. 亿级流量电商详情页系统的大型高并发与高可用缓存架构实战 目录

    对于高并发的场景来说,比如电商类,o2o,门户,等等互联网类的项目,缓存技术是Java项目中最常见的一种应用技术.然而,行业里很多朋友对缓存技术的了解与掌握,仅仅停留在掌握redis/memcache ...

  8. 亿级流量电商详情页系统的大型高并发与高可用缓存架构

    1.亿级流量电商网站的商品详情页系统架构 面临难题:对于每天上亿流量,拥有上亿页面的大型电商网站来说,能够支撑高并发访问,同时能够秒级让最新模板生效的商品详情页系统的架构是如何设计的? 解决方案:异步 ...

  9. 大型电商架构亿级流量电商详情页系统实战--redis基础票

    亿级流量电商详情页系统实战-缓存架构+高可用服务架构+微服务架构 01_高并发高可用复杂系统中的缓存架构有哪些东西 (1)如何让redis集群支撑几十万QPS高并发+99.99%高可用+TB级海量数据 ...

最新文章

  1. 2.安装Ubuntu系统时,系统时间显示不对
  2. mysql创建非聚集索引_聚集索引和非聚集索引的区别
  3. Linux下编译build的命令,【linux基础】20、内核的编译
  4. mysql数据库(1):连接与断开服务器
  5. C#LeetCode刷题之#746-使用最小花费爬楼梯( Min Cost Climbing Stairs)
  6. Kali Linux 网络扫描秘籍 第四章 指纹识别(二)
  7. oracle 查询时间点数据_ORACLE中查询时间点前后一分钟的数据
  8. wordpress插件之baidu-sitemap-generator
  9. 项目管理工具 web_14个用于改善项目的Web工具
  10. 04-cmake语法-STREQUAL
  11. Harmony OS — DatePicker日期选择器
  12. C语言小案例_OA大典案例摘录【第1378篇】联想兄弟激光机卡纸 卡定影 有折叠 卡到出纸口不出来 合集...
  13. 20. DICOM图像层级分类-DCMTK-层级分类
  14. 阵列信号处理笔记-阵列信号处理基础
  15. C语言入门:函数递归与写法
  16. Windows下Java环境配置
  17. Linux内核 之 menuconfig各个选项介绍[转]
  18. 蓝牙中的三种音频编码:Apt-X、SBC、AAC,请问分别有什么区别?
  19. Win10环境下运行红色警戒等老款游…
  20. Unity中常用的游戏存档/读档技术

热门文章

  1. 安装rabbitMQ踩的坑
  2. Oracle数据库实现分页
  3. tsm9_Momentum_Ultimate Oscillators_MACDivergence index_Stochastic RSI_A/D Oscillator_RVI Vigor ADX
  4. wav,flac,mp3,ogg等的区别
  5. javaWeb期末复习实验专题
  6. vue路由跳转不执行mounted方法
  7. java的setquality值多少_java使用JPEGEncodeParam类的setQuality方法进行高质量图片缩放类(转)...
  8. 文字细化算法matlab,细化算法matlab
  9. 通信原理包络是什么意思_科学奇问:光纤通信为什么那么快?光靠什么传递信息的?原理是啥...
  10. 终极单词index 排序 O-P