美文网首页架构设计
47-03、电商网站的商品详情页缓存服务业务背景以及框架结构说明

47-03、电商网站的商品详情页缓存服务业务背景以及框架结构说明

作者: db41bbeed50c | 来源:发表于2019-01-08 01:23 被阅读149次

    模拟真实业务的这么一个小型的项目,来全程贯穿,用这个项目中的业务场景去一个一个的讲解hystrix高可用的每个技术。

    大背景:电商网站,首页,商品详情页,搜索结果页,广告页,促销活动,购物车,订单系统,库存系统,物流系统。

    小背景:商品详情页,如何用最快的结果将商品数据填充到一个页面中,然后将页面显示出来。

    分布式系统:商品详情页,缓存服务,+底层源数据服务,商品信息服务,店铺信息服务,广告信息服务,推荐信息服务,综合起来组成一个分布式的系统。

    1、电商网站的商品详情页系统架构

    (1)小型电商网站的商品详情页系统架构;

    (2)大型电商网站的商品详情页系统架构;

    大型电商网站的详情页系统的架构.png

    (3)页面模板。

    举个例子

    将数据动态填充/渲染到一个html模板中,是什么意思呢?

    <html>
        <title>#{name}的页面</title>
        <body>
            商品的价格是:#{price}
            商品的介绍:#{description}
        </body>
    </html>
    

    上面这个就可以认为是一个页面模板,里面的很多内容是不确定的,#{name},#{price},#{description},这都是一些模板脚本,不确定里面的值是什么?

    将数据填充/渲染到html模板中,是什么意思呢?

    {
        "name": "iphone7 plus(玫瑰金+32G)",
        "price": 5599.50
        "description": "这个手机特别好用。。。。。。"
    }
    
    <html>
        <title>iphone7 plus(玫瑰金+32G)的页面</title>
        <body>
            商品的价格是:5599.50
            商品的介绍:这个手机特别好用。。。。。。
        </body>
    </html>
    

    上面这个就是一份填充好数据的一个html页面。

    小型电商网站的静态化方案.png

    2、缓存服务

    缓存服务,订阅一个MQ的消息变更,如果有消息变更的话,那么就会发送一个网络请求,调用一个底层的对应的源数据服务的接口,去获取变更后的数据。

    将获取到的变更后的数据填充到分布式的redis缓存中去。

    高可用这一块儿,最可能出现说可用性不高的情况,是什么呢?就是说,在接收到消息之后,可能在调用各种底层依赖服务的接口时,会遇到各种不稳定的情况。

    比如底层服务的接口调用超时,200ms,2s都没有返回; 底层服务的接口调用失败,比如说卡了500ms之后,返回一个报错。

    在分布式系统中,对于这种大量的底层依赖服务的调用,就可能会出现各种可用性的问题,一旦没有处理好的话可能就会导致缓存服务自己本身会挂掉,或者故障掉,就会导致什么呢?不可以对外提供服务,严重情况下,甚至会导致说整个商品详情页显示不出来。

    缓存服务接收到变更消息后,去调用各个底层依赖服务时的高可用架构的实现。

    3、框架结构

    围绕着缓存服务去拉取各种底层的源数据服务的数据,调用其接口时,可能出现的系统不可用的问题。

    从简

    spring boot,微服务的非常快速,非常好用的技术框架,脱胎于spring,具体的东西就不讲解,直接带着大家上手搭建一个spring boot的框架。

    2个服务,缓存服务,商品服务,缓存服务依赖于商品服务。

    模拟各种商品服务可能接口调用时出现的各种问题,导致系统不可用的场景,然后用hystrix完整的各种技术点全部贯穿在里面。

    整个的这部分知识我先分享到这里,总感觉这方面有点基础不是很务实,对于大家的需要又不能准确得知,如果大家有什么好的想法和建议的话,请和我留言。我这边吸取大家的建议后再进一步分享。下阶段整理并分享《高可用订单详情页系统》还希望大家多提供一些建议,有些方面可能考虑的不是很周全还请大家谅解,我会在第一时间修正。

    文集:https://www.jianshu.com/nb/32293473

    相关文章

      网友评论

        本文标题:47-03、电商网站的商品详情页缓存服务业务背景以及框架结构说明

        本文链接:https://www.haomeiwen.com/subject/kimdlqtx.html