如题所述
第1个回答 2022-06-14
电商详情页架构方案大概分为两种,第一种小型电商,使用页面静态化的方案;第二种大型电商,架构较为复杂,使用异步多级缓存 + nginx 数据本地化动态渲染的方案。
1. 页面静态化架构(全量页面静态化,适合小型电商网站)
电商详情页分为页面数据和页面模板两块,通过页面模板渲染的方式,把页面数据填充到模板中,生成最终的静态化 HTML 页面,推送到 nginx 服务器上面,前端商品详情页的请求直接通过 nginx 服务访问静态页面。
对于小型网站,页面很少,这种架构方式很实用,也非常简单。模板引擎可以使用 velocity 或者 freemarker 实现,通过页面数据管理的 cms 系统渲染页面。当页面数据或者页面模板出现变更,重新部分或者全量渲染静态化页面。
整体页面静态化架构如下图所示:
2. 异步多级缓存 + nginx 数据本地化动态渲染的架构 (适合大型电商)
对比页面静态化架构,该架构方案在保证高并发、高可用的前提下,不用提前部分或者全量渲染静态化页面,页面数据和模板可以根据业务需求实时变更,由 nginx 渲染成 HTML 静态页面返回给前端展现。
整体架构思路如下图所示: