西部数码主机 | 阿里云主机| 虚拟主机 | 服务器 | 返回乐道官网
当前位置: 主页 > php教程 > magento教程 >

配置Magento缓存为获得最佳性能配置

时间:2016-05-24 17:13来源: 作者: 点击:
如何配置Magento Cache为获得最佳性能? 有很多博客关于magento 高速缓存,以及如何将其配置正确。 在这篇博客中,我想解释的缓存后端文件系统、APC、MemcachedRedis) 建议在哪些环境 (单

如何配置Magento Cache为获得最佳性能?

有很多博客关于magento 高速缓存,以及如何将其配置正确。
在这篇博客中,我想解释的缓存后端文件系统、 APC、 Memcached Redis) 建议在哪些环境 (单个服务器、 多服务器) 中,以及如何配置它。

理解 Magento 两级缓存

Magento 默认使用 zend 框架从两级缓存后的端。
基本上它的关于存储缓存记录在两个后台、 非常快一个 (但有限) 像 APC 或 Memcached 和一种"慢"像文件系统。
每个缓存后端有它的特点。APC 和 Memcached 是键/值缓存后端,它们不支持标记 (缓存条目分组)。文件系统和 Redis 已标记的支持。

在这里你看到怎样的两级缓存我应该工作: (感谢费比诺 Branca)

 magento two level caching overview

Magento 后台缓存的解释

文件系统 (var/高速缓存)

默认情况下,Magento 将它的缓存条目存储在文件系统中,您找到 var/高速缓存中的缓存 /。
此缓存后端是好对于小网站的小的高速缓存大小,但如果你更多和更多的请求,通过访客,读取和写入文件系统获取慢,不时因为高速缓存将增大。
Magento 高速缓存由标记,这意味着你有缓存组所属的缓存条目。
优势
它在默认情况下,您不需要安装额外的软件。
缺点:
Magento 清除缓存条目由标记如后下订单或保存一种产品,以确保块缓存进行更新的存储上。期间结算由缓存条目标记 magento 已打开每个文件要检查缓存中的组是否所属的缓存条目。如果您有与 magento 店 > = 1000年产品你将会有 > 50 MB 的高速缓存大小。50 MB 的文件系统缓存有约 3500 项 (文件),你可以想象这是很慢。
更好的文件系统性能的提示
1.使用固态硬盘,而不是正常的硬盘
2.把 var/缓存目录放在tmpfs

APC — — 替代 PHP 缓存 (键/值)

APC为替代 PHP 缓存站立,并且是为 PHP 的自由和开放的操作码缓存。它的目标是提供一个自由、 开放和鲁棒的框架来缓存和优化 PHP 的中间代码。
优势
非常快速缓存后端。
与您的服务器上的 APC 自动可以有重复的 PHP 脚本处决优化,以更有效地运行。
APC 还提供了用户缓存,用于存储应用程序数据。
缺点
APC 不支持标记,你仍然有一个缓慢文件系统作为慢级缓存。
要求
必须在服务器上安装 PHP APC 扩展。
更好的性能的提示
请确保为 APC 提供足够的内存,由"apc.shm_size"参数
签出我们的最佳实践 (见下文) php.ini 的配置
 

配置(app/etc/local.xml)
 
 
<global>
  ...
  <cache>
    <backend>apc</backend>
      <prefix>mgt_</prefix>
  </cache>
  ...
</global>
Php.ini的设置
 
 
 
apc.enabled = 1
apc.optimization  = 0
apc.shm_segments = 1
apc.shm_size = 768M
apc.ttl = 48000
apc.user_ttl  = 48000
apc.num_files_hint = 8096
apc.user_entries_hint = 8096
apc.mmap_file_mask = /tmp/apc.XXXXXX
apc.enable_cli = 1
apc.cache_by_default  = 1
apc.max_file_size = 10M
apc.include_once_override = 0
Memcached (键/值)
memcached是一个高性能、 分布式内存对象缓存系统,在性质,但拟供在通过减轻数据库负载加速动态 web 应用程序中使用泛型。
优势
非常快速缓存后端。
缺点
Memcached 不支持标记,你仍然有一个缓慢文件系统作为慢级缓存。
要求
-Memcached 服务器
-PHP 扩展为 memcached 的
配置(app/etc/local.xml)
 
<global>
...
<cache>
  <backend>memcached</backend><!-- apc / memcached / empty=file -->
  <memcached><!-- memcached cache backend related config -->
    <servers><!-- any number of server nodes can be included -->
      <server>
        <host><![CDATA[127.0.0.1]]></host>
        <port><![CDATA[11211]]></port>
        <persistent><![CDATA[1]]></persistent>
        </server>
    </servers>
    <compression><![CDATA[0]]></compression>
    <cache_dir><![CDATA[]]></cache_dir>
    <hashed_directory_level><![CDATA[]]></hashed_directory_level>
    <hashed_directory_umask><![CDATA[]]></hashed_directory_umask>
    <file_name_prefix><![CDATA[]]></file_name_prefix>
  </memcached>
</cache>
...
</global>
Redis — — 先进的键-值存储与完整的缓存标记支持
此 magento 缓存后端允许您使用 redis 服务器作为一个中央存储。支持高速缓存标签,我们不需要再用缓慢的级别文件系统缓存中了。
如果有多个 web 服务器的多服务器环境中强烈建议此 magento 缓存后端。
优势
非常快速缓存后的端与完全缓存标记支持,需要无慢级别文件系统缓存
对与以上 500.000 访客高交通 magento 存储测试 / 天,性能是伟大和稳定。
要求:
-必须在服务器上安装 redis
-必须安装 PHP 扩展 phpredis
-必须安装 Magento 扩展"Cm_Cache_Backend_Redis"
安装
 
1.安装redis (2.4 + 所需)
2.安装phpredis
3.安装 magento 扩展"Cm_Cache_Backend_Redis"
4.编辑您 app/etc/local.xml
 
 
<global>
...
<cache>
  <backend>Cm_Cache_Backend_Redis</backend>
  <backend_options>
    <server>127.0.0.1</server> <!-- or absolute path to unix socket -->
    <port>6379</port>
    <persistent></persistent>
    <database>0</database>
    <password></password>
    <force_standalone>0</force_standalone>
    <connect_retries>1</connect_retries>
    <automatic_cleaning_factor>0</automatic_cleaning_factor>
    <compress_data>1</compress_data>
    <compress_tags>1</compress_tags>
    <compress_threshold>20480</compress_threshold>
    <compression_lib>gzip</compression_lib> <!-- Supports gzip, lzf and snappy -->
  </backend_options>
</cache>
...
</global>
Redis 的有用工具
 
phpRedisAdmin
phpRedisAdmin 是一个简单的 web 界面来管理 Redis 数据库。
演示:http://dubbelboer.com/phpRedisAdmin/?overview
phpredisadmin
结论
如果您有一个小商店与小的高速缓存大小然后 APC + 文件系统,你会没事的二级缓存。此外,我建议使用固态硬盘,并将缓存目录放入 tmpfs。
如果你有更大的存储区和专用的服务器你应该看看 redis,非常快也是为大高速缓存大小 > 500 MB。Redis 也是你需要一个中央高速缓存的地方多服务器环境中的完美高速缓存解决方案。
(责任编辑:好模板)
顶一下
(1)
100%
踩一下
(0)
0%
------分隔线----------------------------
栏目列表
热点内容