电子商务网站的,页面上往往或有很多活动的广告需要频繁的替换,还有关于网站的说明的文章,这些不是经常变动的,还有一些是专区的活动页面,上面放的都是活动的商品。
简单的设计思路:
1.建立一个模版表template,可以根据模版生成html
结构:id、模版名称、状态(有效和无效)、模版内容、类型(html和vm)
2.建立一个模版实例表templateInstence,用来存放生成的html的信息
结构:id、templateId、html文件名称、html文件位置
3.建立一个模版实例商品表(非必须),用来存放需要参加某个html页面的活动商品
结构:id、templateInstenceId、商品id
实例根据模版内容来生成html,然后页面引用该html,模版内容可以采用html也可以采用vm,如果是广告简单的html即可,如果是要生成一个活动商品列表这就需要用到vm了,然后程序根据vm的内容来动态生成html文件。、
但是今天突然发现由于广告内容很少,有的时候只是一个img而已然后就为他生成一个html文件,感觉后台的设置有点复杂了,于是就深入的思考,想到了用缓存,这里的缓存指的是查询数据库,就直接通过查询模版里面的内容然后显示到页面中,这样感觉比生成html性能还好,因为页面不需要再重新发起一个请求去load相关的html了,直接从内存获取广告的内容,这样的效率更快。这里说只有广告不用生成html是因为他们的内容少,不占用很多内存。如果是内容很多的文章或者商品列表建议还是老老实实的生成html吧,因为他们有可能把系统的内存用完!!!
以上就是今天对项目中的模版和模版实例的一个认识。
一下就是思想过程的变化:
刚开始认为既然用了缓存,html就没有必要存在了,后来仔细一想,不对,如果html中的内容很多,一下子缓存到了系统中的内存中,这样系统内存就会被大量的消耗,由于系统的内存比较重要,这样做就反而弄巧成拙了,于是就想到了上面的内容,这个需要在设计阶段决定的。
自己今天觉得关于模版的这一块的思想有所进步,于是赶紧记录下来,方便以后查看。上面只是简单的把原理说了一下,真是的系统往往比这个复杂很多。
原文地址:http://www.cnblogs.com/andysd/p/3890888.html