magento优化之模板静态化

最近首页很慢,运行magento profile检查的时候,发现首页某个templat运行时间占了一半,大概6s。

用magento自带的缓存,尝试把代码中的collection缓存起来,但不知道为啥一直失败,最后决定把整个template转成静态的页面,每两小时重新生成。

代码如下:

<?php
$dir = Mage::getBaseDir().DS.‘var‘.DS;
$fileName = $dir.‘real_static_categories.phtml‘;

if(!file_exists($fileName)||(filemtime($fileName)&&(time()-filemtime($fileName)>7200))){
    $text=Mage::app()->getLayout()->createBlock(‘catalog/product_list‘)->setTemplate(‘catalog/product/productcarousel/carouselblocks/categories.phtml‘)->toHtml();
    $file=fopen($fileName,‘w‘);
    fwrite($file,$text);
    fclose($file);
}
$file=fopen($fileName,‘r‘);
echo fread($file,filesize($fileName));
fclose($file);

?>

效果良好,访问速度提升一倍。

时间: 2024-10-14 00:21:20

magento优化之模板静态化的相关文章

页面静态化----------------------------------------个人笔记

***********************************************大型网站提速关键技术(页面静态化,mmecached,mysql优化)*********************************************************************************** ************************************************************页面静态化*******************

PHP实现HTML页面静态化的方法

随着网站的内容的增多和用户访问量的增多,无可避免的是网站加载会越来越慢,受限于带宽和服务器同一时间的请求次数的限制,我们往往需要在此时对我们的网站进行代码优化和服务器配置的优化. 一般情况下会从以下方面来做优化 动态页面静态化 优化数据库 使用负载均衡 使用缓存 使用CDN加速 现在很多网站在建设的时候都要进行静态化的处理,为什么网站要进行静态化处理呢?我们都知道纯静态网站是所有的网页都是独立的一个html页面,当我们访问的时候不需要经过数据的处理直接就能读取到文件,访问速度就可想而知了,而其对

PHP静态化技术

很多框架的模板引擎都有页面静态化的功能  目的是为了优化网站运行时间 静态化分两种  纯静态和伪静态 一. 纯静态 纯静态展示的是实实在在的静态页面 运行PHP程序 判断是否存在静态页 如果存在 展示静态页 如果不存在 生成静态页 再展示实现方法 是PHP的ob缓冲 //PHP程序一系列逻辑 并将要展示的数据赋值给某些变量准备在模板中使用 ob_start();//开启ob缓冲区 也可以在配置文件中开启 require_once('template/index.php');//引入模板文件 也有

页面静态化1---概念(Apache内置压力测试工具使用方法)

三个概念 ①静态网址: http://127.0.0.1/regis.html ②动态网址:在请求页面时可以动态的传一些值进去. http://127.0.0.1/regis.php?id=45&title=今天天气不错 ③伪静态网址: 伪静态仅仅是对动态网址的一个重写,伪静态网址不能让动态网址静态化,搜索引擎不会认为伪静态就是HTML文档,其次伪静态可取,但是应把重心放在取出冗余参数.规范URL,竟可能的避免重复也等等. 举例说明:http://v.youku.com/v_show/id_XM

网站维护思路,静态化思路

网站性能优化的方面有很多: 1,使用缓存,最传统的一级二级缓存: 2,将服务和数据库分开,使用不同的服务器,分工更加明确,效率更加高: 3,分布式,提供多台服务器,利用反向代理服务器nginx进行反向代理,将请求分散开来: 4,数据库的读写分离,不同的数据库,将读操作和写操作分开,并实时同步即可: 5,分布式缓存,使用memcached或者redis等分布式缓存服务器,可以达到效果: 6,页面静态化.当然还有其他很多方便需要处理,例如,数据库的设计,分库分字段,sql语句的优化等等 页面静态化有

【转】关于大型网站技术演进的思考(二十一)--网站静态化处理—web前端优化—下【终篇】(13)

本篇继续web前端优化的讨论,开始我先讲个我所知道的一个故事,有家大型的企业顺应时代发展的潮流开始投身于互联网行业了,它们为此专门设立了一个事业部,不过该企业把这个事业部里的人事成本,系统运维成本特别是硬件采购的成本都由总公司来承担,当然互联网业务上的市场营销成本这块还是由该事业部自己承担,可是网站一年运维下来,该公司发现该事业部里最大的成本居然不是市场营销的开销,而是短信业务和宽带使用上的开销,是不是有点让人感到意外呢?下面我来分析下这个场景吧. 短信这块是和通讯运营商有关,很难从根本上解决,

关于大型网站技术演进的思考(二十一)--网站静态化处理—web前端优化—下【终篇】(13)

本篇继续web前端优化的讨论,开始我先讲个我所知道的一个故事,有家大型的企业顺应时代发展的潮流开始投身于互联网行业了,它们为此专门设立了一个事业部,不过该企业把这个事业部里的人事成本,系统运维成本特别是硬件采购的成本都由总公司来承担,当然互联网业务上的市场营销成本这块还是由该事业部自己承担,可是网站一年运维下来,该公司发现该事业部里最大的成本居然不是市场营销的开销,而是短信业务和宽带使用上的开销,是不是有点让人感到意外呢?下面我来分析下这个场景吧. 短信这块是和通讯运营商有关,很难从根本上解决,

PHPCMS V9静态化HTML生成设置及URL规则优化

最近有客户在进行网站优化的时候,具体问道Phpcms V9怎么样静态化.伪静态的问题,想起来之前有分享过“Phpcms自定义URL规则技巧”,不过那只是原理,今天在这里,与大家从使用的角度上,具体分享实际的使用操作方法. 先讲讲Phpcms V9在后台怎么设置生成静态化HTML,之后再讲解怎么自定义URL规则,进行URL地址优化. 一.静态化HTML生成设置 进入PHPCMS V9后台设置,找到分类栏目,位置:内容->管理栏目->添加栏目(或者管理栏目.点击对应栏目“修改”): 注意设置第二选

Spring MVC 学习总结(七)——FreeMarker模板引擎与动态页面静态化

模板引擎可以让程序实现界面与数据分离,业务代码与逻辑代码的分离,这就提升了开发效率,良好的设计也使得代码复用变得更加容易.一般的模板引擎都包含一个模板解析器和一套标记语言,好的模板引擎有简洁的语法规则.强大的功能.高效的渲染效率.详尽的帮助说明与不断的更新与维护.常见的前端模板引擎有: 常用的java后台模板引擎:jsp.FreeMarker.Velocity等. 请不要迷恋速度,为了推广的测试可能是片面的,好的模板引擎经得起时间考验,建议大家选择成熟的.常用的模板引擎.另外不管前后端的模板引擎