小型
页面全量静态化
页面静态化系统,将数据填充进静态模板中,形成静态化页面,推入 Nginx 服务器
取用一个已经静态化好的 html 页面,直接返回回去,不涉及任何的业务逻辑处理
Java 中可以使用 velocity、freemarker、thymeleaf 等等,模板变更的时候,点击按钮或者系统自动化重新进行全量渲染
大型
每次页面模板修改了,都需要将这么多页面全量静态化,每次渲染花个好几天时间,那你整个网站就废掉了
当商品数据发生变更时,会将变更消息压入 MQ 消息队列中
缓存服务从消息队列中消费这条消息时,通过调用数据服务接口,获取变更后的数据,然后将整合好的数据推送至 redis 中
Nginx 本地缓存的数据是有一定的时间期限的,比如说 10 分钟,当数据过期之后,它就会从 redis 获取到最新的缓存数据,并且缓存到自己本地
动态将 Nginx 本地数据渲染到本地 html 模板并返回给用户