1.电商网站按规模分类
电商网站里,大概可以说分成两种:
小型电商
简单的一种架构方案,页面静态化的方案大型电商
复杂的一套架构,大电商,国内排名前几的电商,大型的详情页架构页面静态化,全量的页面静态化
2.小型电商的页面静态化的方案
2.1 静态页面生成过程
编写一个模板文件
<html><title></title><body>商品名称:#{productName}商品价格:#{productPrice}商品描述:#{productDesc}</body></html>
对应的数据
product表:product_nameproduct_priceproduct_desciphon7 plus5599.50这是最好的手机
经过页面渲染后
<html><title><style css><javascript></title><body>商品名称:iphon7 plus商品价格:5299.50商品描述:这是最好的手机,大降价了</body></html>
2.2 静态页面修改过程
修改模板文件
<html><title><style css><javascript></title><body>商品名称:#{productName}商品价格:#{productPrice}商品描述:#{productDesc}</body></html>
数据变更
product表:product_nameproduct_price product_desciphon7 plus(玫瑰) 5299.50 这是最好的手机,大降价了
经过页面渲染后
<html><title><style css><javascript></title><body>商品名称:iphon7 plus(玫瑰)商品价格:5299.50商品描述:这是最好的手机,大降价了</body></html>
2.3 模板渲来的问题
假如模板改变了,那么这个模板对应的所有数据,1万个数据,全部重新渲染一遍,填充到模板中,生成最终的静态化html页面。
对于小网站,页面很少,很实用,非常简单,模板引擎(如:velocity,freemarker),页面数据管理的cms系统或内容管理系统,点击一个按钮,做成系统自动化,重新全量渲染html --> 几百个页面,推送到nginx服务器上面,直接走html。
但对于大型系统,页面太多,上亿,一个模板修改了,重新渲染一亿的商品,靠谱嘛?可能需要渲染几天。