一、Magento Compiler可以提高 25% 到 50% 速度

Magento的性能一直是大家比较关心的焦点,现在Magento最新的版本 1.3.2.2 增加了 Magento Compiler 模块,根据官方的资料,该模块可以提高 25% 到 50% 的性能.

我也在测试网站上激活该模块,感觉效果还是不错,目前还是beta版本,不过还是推荐使用Magento的朋友试试。

该模块是从版本 1.3.2.1 开始引入的,如果你的Magento网站已经是1.3.2.1或者更高的版本,该模块已经预装好了,可以直接从后台激活该模块:

System -> Tools -> Compilation (Beta)

然后选 Run Compilation Process, 大约数分钟之后会出现 Compilation Successfully finished 就可以了。如果使用有问题,只需在同一页面下按 Disable 按钮就可以了。

对于使用1.3.2.1之前的版本的朋友,需要升级到最新版本(目前是1.3.2.2)然后再安装该模块,我试过在低于1.3.2.1的Magento网 站中安装,安装后在Tools中找不到Compilation,所以必须升级到1.3.2.1 或更新的版本才能使用该模块,模块URL:

http://www.magentocommerce.com/extension/1359/magento-compiler 
可以用下面 Extension Key 通过Magento Connect 来安装: 
magento-core/Mage_Compiler

二、让MAGENTO加速一倍的办法

大家可能都发现了,刚装上MAGENTO的时候,MAGENTO是比乌龟还慢的一个系统。。。

如何解决呢?其实很多的主机都已经默认安装一个组件:GZIP。 我们就是要通过修改它来提高MAGENTO的运行速度。

关于能提高多少的问题?大家可以在修改之前去mod_gzip tester 看看你MAGENTO网站的速度,然后在修改之后再去看看。。。

现在我们为MAGENTO开启GZIP。比较方便的方法是修改根目录下.htaccess 文件。我们只需要去掉一些注释就可以了。

在根目录.htaccess找到和以下代码相似的代码,并且把代码修改得和下面一模一样。(去掉前面的#符号。)

.htaccess代码 

  • ############################################
  • ## enable apache served files compression
  • ## http://developer.yahoo.com/performance/rules.html#gzip
  • # Insert filter
  • SetOutputFilter DEFLATE
  • # Netscape 4 .x has some problems…
  • BrowserMatch ^Mozilla/4 gzip-only-text/html
  • # Netscape 4.06 -4.08 have some more problems
  • BrowserMatch ^Mozilla/4 /.0 [678 ] no-gzip
  • # MSIE masquerades as Netscape, but it is fine
  • BrowserMatch /bMSIE !no-gzip !gzip-only-text/html
  • # Don’t compress images
  • SetEnvIfNoCase Request_URI /.(?:gif|jpe?g|png)$ no-gzip dont-vary
  • # Make sure proxies don’t deliver the wrong content
  • Header append Vary User-Agent env=!dont-vary

############################################## enable apache served files compression##http://developer.yahoo.com/performance/rules.html#gzip# Insert filterSetOutputFilter DEFLATE# Netscape 4.x has some problems…BrowserMatch ^Mozilla/4 gzip-only-text/html# Netscape 4.06-4.08 have some more problemsBrowserMatch ^Mozilla/4/.0[678] no-gzip# MSIE masquerades as Netscape, but it is fineBrowserMatch /bMSIE !no-gzip !gzip-only-text/html# Don’t compress imagesSetEnvIfNoCase Request_URI /.(?:gif|jpe?g|png)$ no-gzip dont-vary# Make sure proxies don’t deliver the wrong contentHeader append Vary User-Agent env=!dont-vary

另外还有下面这一段:

.htaccess代码 

  • ############################################
  • ## enable resulting html compression
  • php_flag zlib.output_compression on

############################################## enable resulting html compressionphp_flag zlib.output_compression on

好了,大功告成,保存你的文件。刷新MAGENTO的缓存,你会觉得速度快了好多好多。

三、end Optimizer 
   Zend Optimizer用优化代码的方法来提高PHP4.0应用程序的执行速度。实现的原理是对那些在被最终执行之前由运行编译器(Run- TimeCompiler)产生的代码进行优化。一般情况下,执行使用ZendOptimizer的PHP程序比不使用的要快40%到100%。这意味着 网站的访问者可以更快的浏览网页,从而完成更多的事务,创造更好的客户满意度。更快的反应同时也意味着可以节省硬件投资,并增强网站所提供的服务。所以, 使用ZendOptimizer,就等于提高了电子商务的盈利能力。ZendOptimizer能给PHP用户带来很多益处,特别是那些运营网站的人。快 速运行PHP程序可以显著降低服务器的CPU负载,并可以减少一半的反应时间,也就是从访问者点击链接到服务器开始读取页面之间的时间。

四、站点优化 
magento的网站实在是太慢了,想了好多办法,参考了好多资料,做了很多测试,总结一下大概的步骤: 
1、压缩js,css代码,如果有必要把所有的css,js分别综合到一个文件中,并压缩,缓存 
2、清除magento模板中不必要的注释,为所使用到的图片瘦身 
3、优化magento代码,这个步骤工作量大,但可能是效果显著的步骤,不过前提是你非常熟悉magento,彻底删除不用的模块,关闭没用的 block,清除无效,无用的xml(解析xml非常昂贵的),在一个页面中尽量不要大量调用magento的imageresize功能,非常消耗内 存,除非你自己优化代码。 
4、mysql配置优化,充分发挥你的硬件资源,下面的数值要根据你的配置调整 
My.ini代码 

  • key_buffer_size = 512M
  • max_allowed_packet = 64M
  • table_cache = 512
  • sort_buffer_size = 4M
  • net_buffer_length = 8K
  • read_buffer_size = 4M
  • read_rnd_buffer_size = 2M
  • myisam_sort_buffer_size = 64M
  • tmp_table_size = 128M
  • query_cache_size = 96M
  • query_cache_type = 1
  • thread_cache_size = 8
  • max_connections = 400
  • wait_timeout = 300

key_buffer_size = 512Mmax_allowed_packet = 64Mtable_cache = 512sort_buffer_size = 4Mnet_buffer_length = 8Kread_buffer_size = 4Mread_rnd_buffer_size = 2Mmyisam_sort_buffer_size = 64Mtmp_table_size = 128Mquery_cache_size = 96Mquery_cache_type = 1thread_cache_size = 8max_connections = 400wait_timeout = 300
5、将magento的var目录挂载到内存中,加快读取速度,如

mount -t tmpfs -o size=100M,mode=0777 tmpfs var

6、安装php加速器,如APC,XCACHE,eAccelerator,安装方法参考相关的网站

然而归于根本,最大的优化来自于对模板,对代码,对block的优化。

http://www.magentocommerce.com/blog/comments/performance-is-key-notes-on-magentos-performance/

http://www.magentocommerce.com/blog/comments/understanding-magento-scalability-and-performance-1/

Magento速度优化的更多相关文章

  1. magento性能优化的教程(非常详细)

    Magento是一套专业开源的电子商务系统,Magento设计得非常灵活,具有模块化架构体系和丰富的功能但有朋友会发现此模块用到了会发现非常的缓慢了,那么下面我们来看关于magento性能优化的例子. ...

  2. [转]magento性能优化的教程(非常详细)

    本文转自:https://www.sypopo.com/post/kMQE8dERoV/ 前面优化 mod_deflate模块,将text. css 和 javascript 先进行压缩再发送到浏览器 ...

  3. Magento站点优化方案

    Magento 是一个开源电子商务系统,尤其以扩展性高著称,但是很高的扩展性往往是牺牲了速度为代价的,虽然现在magento为速度提升做了很多工作,但是还是没能达到人们对速度的要求.既然如此还是很自然 ...

  4. [转]Asp.net mvc 网站之速度优化 -- 页面缓存

    网站速度优化的一般方法 由于网站最重要的用户体验就是速度,特别是对于电子商务网站而言. 一般网站速度优化会涉及到几个方面: 1. 数据库优化 — 查询字段简历索引,使用数据库连接池和持久化,现在还有种 ...

  5. magento性能优化

    magento性能优化 14个快速加载web页面的技巧: 减少HTTP请求数使用CDN增加过期头信息gzip压缩传输内容将css样式表放在页首将js文件放在页尾不使用css表达式尽量少用内联式的css ...

  6. web访问速度优化分析

    请求从发出到接收完成一共经历了DNS Lookup.Connecting.Blocking.Sending.Waiting和Receiving六个阶段,时间共计38ms.请求完成之后是DOM加载和页面 ...

  7. Tone Mapping算法系列二:一种自适应对数映射的高对比度图像显示技术及其速度优化。

    办公室今天停电,幸好本本还有电,同事们好多都去打麻将去了,话说麻将这东西玩起来也还是有味的,不过我感觉我是输了不舒服,赢了替输的人不舒服,所以干脆拜别麻坛四五年了,在办公室一个人整理下好久前的一片论文 ...

  8. 记一次cocos项目的加载速度优化

    半个月前,我们用cosos creator做了一个简单的小游戏,也许算不上小游戏吧..一边学cocos,一边做,几经波折后终于上线了.然鹅,功能是实现了,但是加载速度十分感人(毕竟没经验嘛,无辜脸). ...

  9. [转]magento性能优化

    本文转自:https://www.cnblogs.com/zhengyanbin2016/p/5577792.html magento性能优化 14个快速加载web页面的技巧: 减少HTTP请求数使用 ...

随机推荐

  1. Github注册流程和使用体验

    大家好,我叫施蓓蓓,学号1413042063,在网络工程143班,我的兴趣爱好有很多,特别是在专业方面,比如软件工程.操作系统.网络通信技术.计算机组成原理等,我对游戏十分感兴趣,以后就业会朝这方面发 ...

  2. 史上最全的 Java 新手问题汇总

    史上最全的 Java 新手问题汇总   Java是目前最流行的编程语言之一——它可以用来编写Windows程序或者是Web应用,移动应用,网络程序,消费电子产品,机顶盒设备,它无处不在. 有超过30亿 ...

  3. PHP可变长函数方法介绍

    1.三个重要函数 func_num_args()  返回实参个数 func_get_arg(i)    返回某个实参的值       func_get_args()        以数组的形式返回实参 ...

  4. CI框架 输入类

    1.$this->input->post() 第一个参数是所要取得的post中的数据: $this->input->post('some_data'); 如果数据不存在,方法将 ...

  5. LZMA demo挑选使用备忘

    一.源码下载:http://sourceforge.net/projects/sevenzip/ 二.各种EXE及其功能 代码里面有很多的dsw工程,功能不一,size不一,需要挑选合适的加入到自己的 ...

  6. Oracle select case when

    Case具有两种格式.简单Case函数和Case搜索函数. --简单Case函数 CASE sex WHEN '1' THEN '男' WHEN '2' THEN '女' ELSE '其他' END ...

  7. mysql 无法远程访问(授权也没办法,确切的说是因为只绑定了127IP)

    默认状况下,出于安全考虑,mysql数据库屏蔽了远程访问功能. 然而在许多状况下,你需要在家或者从web程序去访问远端数据库服务器,这就相当麻烦了. 第一步: 激活网络设置你需要编辑mysql配置文件 ...

  8. mapreduce job提交流程源码级分析(三)

    mapreduce job提交流程源码级分析(二)(原创)这篇文章说到了jobSubmitClient.submitJob(jobId, submitJobDir.toString(), jobCop ...

  9. Java longTime 和C#日期转换

    封装一下,可直接用. 以后碰到java的long time,直接使用DateTime dt=ConvertJavaDateTimeToNetTime(1207969641193);这样使用即可. 这串 ...

  10. Debug的F5~F8用法

    快捷键(F6)单步执行程序,遇到方法时跳过. 快捷键(F8)执行此断点到最后,进入下一个断点开始之处. 快捷键(F5)单步执行程序,遇到方法时进入. 快捷键(F7)单步执行程序,从当前方法跳出.