• 001大型电商网站的异步多级缓存构建 + nginx 数据本地化动态渲染的架构


    大型电商网站的详情页架构一般是这样的核心思路,如上图

    两个关键点:

    1. 缓存数据生产服务
    2. nginx 上的 html 模板 + 本地缓存数据

    来捋一捋流程:

    1. 用户访问 nginx
      会先从 nginx 的本地缓存获取数据渲染后返回,这个速度很快,因为全是内存操作。
      本地缓存数据是有时间的,比如 10 分钟

    2. 假如 nginx 本地缓存失效
      会从 redis 中获取数据回来并缓存上

    3. 假如 redis 中的数据失效
      会从缓存数据生产服务中获取数据并缓存上

    4. 缓存数据生产服务
      本地也有一个缓存,比如用的是 ehcache
      他们通过队列监听商品修改等事件,让自己的缓存数据及时更新

    5. 其他服务
      商品、店铺等服务能获取到商品的修改事件等,及时往 mq 中发出商品的修改事件,
      并提供商品原始数据的查询。这里可能是直接从 mysql 库中查询的

    这样一来,在缓存上其实就挡掉了很多数据,一层一层的挡并发

    参考

    -中华石杉:亿级流量电商详情页系统实战(第二版):缓存架构+高可用服务架构+微服务架构
    -Mrcode笔记本

  • 相关阅读:
    微信证书发布涉及到的问题
    C# Timer自带定时器
    微信accesstoken回调
    c#数组乱序,打乱数组
    JS 数组乱序
    百度地图LBS开放平台AK一直没有用
    C# 微信支付证书使用
    提交失败问题一:检测到有潜在危险
    apache如何发布地图服务
    Java后端进阶教程
  • 原文地址:https://www.cnblogs.com/codecheng99/p/12382090.html
Copyright © 2020-2023  润新知