zoukankan      html  css  js  c++  java
  • Magento站点优化方案

    1. 1) Magento 自身cache

      进入后台: System -> Cache Management– Configuration

      – Layouts

      – Block HTML output

      – Translations

      – Collections Data

      – EAV types and attributes

      – Web Services Configuration

      全部选择 并enable,submit即可,缓存开启可以减少程序对数据库的请求,也能减少程序动态生成,所有的站点文件都会存放在缓存文件中,Apache在请求站点的时候会由程序引导去读缓存,而硬盘I/O的速度要比数据库读取速度快很多。而且缓存文件是经过索引的,自然速度更上一个数量级。

    2. 2

      2)MySQL Cache Size 设置

      ssh连接到服务器,进入/etc/目录,修改my.cnf文件,加入

      query_cache_size=128M innodb_buffer_pool_size=64M innodb_additional_mem_pool=16M

      这里是数据库缓存,每次用户请求数据库时会生成这个缓存,而当用户直接查询 数据库时,由于sql效率不太高,请求列队造成了延迟,从而影响整站速度,但如果有了缓存,MySQL内部会直接去缓存处读取数据,类似Apache缓 存,这样不但加速数据读取速度,还能减少数据库负载。

    3. 3

      3) Enabling Gzipping 启用gzip压缩FTP链接到网站目录,修改.htaccess文件,删除之前的“#”即可打开以下开关

      php_flag zlib.output_compression onAddHandler application/x-httpd-php5 .css

      这里主要是为了加快站点信息传输速度,所有内容通过gzip压缩后传输要比原本的直接传输速度快得多。

    4. 4

      4)开启javascript和css编译

      进入后台:

      system->Configuration->Developer->Javascript Setting 开启javascript编译合并

      Merge javascript files->Yes

      Enable prototype deprecation log->Yes

      system->Configuration->Developer->CSS Setting 开启css编译合并

      Merge CSS File->Yes

    5. 5

      5)开启APC缓存机制

      APC缓存机制是Linux上做分布式缓存的一个开源软件

      由于服务器上默认没有安装,所以需要安装。

      打开SSH链接到服务器,在终端执行命令:yum install pcre-devel (这个是pcre的开发包,安装pac必需)

      安装完成后再执行命令:pecl install apc(这就是安装apc缓存)

      然后再PHP.ini中加入extension=apc.so (将缓存扩展加入php配置文件)

      然后修改站点配置文件/app/etc/local.xml

      在之间加入

      <cache>    <backend>apc</backend>    <prefix>alphanumeric</prefix>    </cache>

      其实这么做相当于加了二次缓存,第一次是APC缓存,第二次是Magento自带的缓存系统.一般缓存不会太多,否则反而影响速度,当前状态下,速度算是比较快的了.

      (突然发现APC偶尔会导致Apache死掉,原因是APC和Zend optimizer冲突,导致httpd进程被干掉,禁用该扩展,一切正常。)

      冲突部分如下:

      [Zend]    zend_extension_manager.optimizer=/usr/local/Zend/lib/Optimizer-3.3.3    zend_extension_manager.optimizer_ts=/usr/local/Zend/lib/Optimizer_TS-3.3.3    zend_optimizer.version=3.3.3    zend_extension=/usr/local/Zend/lib/ZendExtensionManager.so    zend_extension_ts=/usr/local/Zend/lib/ZendExtensionManager_TS.so    ;extension=apc.so

    6. 6

      6)设置apache 开启 KeepAlive

      KeepAlive = On (KeepAlive 配置指令决定当处理完用户发起的 HTTP 请求后是否立即关闭 TCP 连接,如果 KeepAlive 设置为On,那么用户完成一次访问后,不会立即断开连接,如果还有请求,那么会继续在这一次 TCP 连接中完成,而不用重复建立新的 TCP 连接和关闭TCP 连接,可以提高用户访问速度。);

      LoadModule deflate_module     modules/mod_deflate.so #开启mod_deflate

    7. 7

      7)开启Magento动态编译

      进入后台:

      System->Tools->Compilation

      查看Compilation Status 如果是Disabled,则点击右上角Enable打开,如果是Enabled,则表示动态编译已经开启.

      开启动态编译是为了让程序执行的时候直接进入includes/src中读取文件,而不是去app下读取,因为magento使用的是HMVC模式,层级关系越多,速度越慢,直接去src中读取反而更快.

    8. 8

      8) 开启Zend Optimizer优化器

      magento目录中有php.ini文件,在最后一行加入:

      [Zend]    zend_extension_manager.optimizer=/usr/local/Zend/lib/Optimizer-3.3.3    zend_extension_manager.optimizer_ts=/usr/local/Zend/lib/Optimizer_TS-3.3.3    zend_optimizer.version=3.3.3    zend_extension=/usr/local/Zend/lib/ZendExtensionManager.so    zend_extension_ts=/usr/local/Zend/lib/ZendExtensionManager_TS.so

      Zend Optimizer安装目录视情况而定,此处仅做参考

      加入Zend Optimizer 可提高PHP运行速度40%-100%

      (另:Zend Optimizer与APC高速缓存器存在冲突,二者之可选其一,很蛋疼。。。)

      ok 初步的优化已经完成,目测速度提升约4-5倍.

    不在吃苦的年纪选择安逸!
  • 相关阅读:
    poj 3616 Milking Time
    poj 3176 Cow Bowling
    poj 2229 Sumsets
    poj 2385 Apple Catching
    poj 3280 Cheapest Palindrome
    hdu 1530 Maximum Clique
    hdu 1102 Constructing Roads
    codeforces 592B The Monster and the Squirrel
    CDOJ 1221 Ancient Go
    hdu 1151 Air Raid(二分图最小路径覆盖)
  • 原文地址:https://www.cnblogs.com/DaHai-st/p/6247685.html
Copyright © 2011-2022 走看看