ecshop缓存机制
2016-03-01 09:36
288 查看
我们知道ECSHOP打开速度很快,这是为什么呢?因为ECSHOP使用了模板缓存技术,相当于打开一个已经编译好的静态页面,所以速度很快。
在商店设置->基本设置里可以设置缓存的生存期,默认是3600秒。
如果需要调试网站,你可以设置缓存存活时间为0,不缓存任何页面。打开/index.php,可以看到以下代码:
$cache_id就是缓存的ID,根据这个ID,找到缓存的文件。ecshop使用的缓存类似于smarty的缓存机制。当然ecshop把它简单化了。全部写/inludes/cls_template.php文件里。
if (!$smarty->is_cached('index.dwt', $cache_id))
通过smarty类的is_cached方法判断页面是否重新缓存页面。如果返回false,那么就直接显示缓存的文件。
$smarty->display('index.dwt', $cache_id);
这样的缓存,既节省了网页的打开时间,又增加了网站的负载性能。你可以根据网站的实际情况,来设置模板的缓存时间,以提升网站性能。但网页有些地方,不能缓存。比如:库存、倒记时、会员的登录状态,购物车等,这些都必须是实时的,ECSHOP里可以找到lib_insert.php文件,所有不能缓存的地方都写在这里了。比如购物车代码,在模板里使用{insert name='cart_info'}调用进行,另外也可以使用Ajax方法实现。
$(".MathJax").remove();
在商店设置->基本设置里可以设置缓存的生存期,默认是3600秒。
如果需要调试网站,你可以设置缓存存活时间为0,不缓存任何页面。打开/index.php,可以看到以下代码:
1 2 3 4 5 6 7 8 9 10 11 12 13 | /** * 判断是否存在缓存,如果存在则调用缓存,反之读取相应内容 */ $cache_id=sprintf('%X',crc32($_SESSI 4000 ON['user_rank'].'-'.$_CFG['lang']));//缓存编号 if(!$smarty->is_cached('index.dwt',$cache_id)) { assign_template(); $position=assign_ur_here(); $smarty->assign('page_title', $position['title']); // 页面标题 $smarty->assign('ur_here', $position['ur_here']); // 当前位置 |
if (!$smarty->is_cached('index.dwt', $cache_id))
通过smarty类的is_cached方法判断页面是否重新缓存页面。如果返回false,那么就直接显示缓存的文件。
$smarty->display('index.dwt', $cache_id);
这样的缓存,既节省了网页的打开时间,又增加了网站的负载性能。你可以根据网站的实际情况,来设置模板的缓存时间,以提升网站性能。但网页有些地方,不能缓存。比如:库存、倒记时、会员的登录状态,购物车等,这些都必须是实时的,ECSHOP里可以找到lib_insert.php文件,所有不能缓存的地方都写在这里了。比如购物车代码,在模板里使用{insert name='cart_info'}调用进行,另外也可以使用Ajax方法实现。
$(".MathJax").remove();
相关文章推荐
- tomcat启动报错---java.lang.NoClassDefFoundError: org/apache/juli/logging/LogFactory
- nginx 配置参数详解
- Linux下查看文件夹下文件个数
- linux解压命令
- 打开Apache自带的Web监视器
- Linux shell脚本编程(三)
- linux 标准I/O函数详解
- Zookeeper实现集群和负载均衡---(3)详细设计
- 双频无线网安装设置(5g ) for linux
- 无需序列号安装Photoshop CS6
- tomcat 控制台日志输出到文件
- OPENCV haarcascade文件解析
- tomcat架构分析(valve源码导读)
- Linux下打包压缩war和解压war包 zip和jar
- 软件架构RUP 4+1 视图模型
- Linux发送监控指标到内部邮箱
- SBA--以服务为基础的架构
- Citrix XenDesktop 中VDA向DDC注册机制解析
- nginx配置ssl
- Photoshop快捷键完整篇