飞云网络官方博客飞云网络官方博客

飞云网络官方博客
记录网站建设中的技术解决方案

使用SSH来设置Magento 2 Redis

       默认的Magento2是使用Zend_Cache_Backend_File作为缓存处理,更改为redis,可以让Magento2运行速度更快.

使用redis可以作为我们Magento2的session及page储存,使用redis可以完全替代memcached,并且更好的运行.

Redis通过索引文件中的tag标记来工作,不需要对每个缓存文件进行完整的扫描,所以速度更快。


       Redis是一个key-value存储系统。和Memcached类似,它支持存储的value类型相对更多,包括string(字符串)、list(链表)、set(集合)、zset(sorted set --有序集合)和hash(哈希类型)。这些数据类型都支持push/pop、add/remove及取交集并集和差集及更丰富的操作,而且这些操作都是原子性的。在此基础上,redis支持各种不同方式的排序。与memcached一样,为了保证效率,数据都是缓存在内存中。区别的是redis会周期性的把更新的数据写入磁盘或者把修改操作写入追加的记录文件,并且在此基础上实现了master-slave(主从)同步。


一、使用SSH工具登陆服务器,然后执行如下命令来启用Redis的缓存cache默认设置项

bin/magento setup:config:set --cache-backend=redis --cache-backend-redis-server=127.0.0.1 --cache-backend-redis-db=0

二、启用Redis的page cache

bin/magento setup:config:set --page-cache=redis --page-cache-redis-server=127.0.0.1 --page-cache-redis-db=1

三、在magento 2的根目录下:app/etc/env.php 这个文件里应该可以看到如下的redis代码设置项

'cache' => [
    'frontend' => [
        'default' => [
            'backend' => 'Cm_Cache_Backend_Redis',
            'backend_options' => [
                'server' => '127.0.0.1',
                'database' => '0',
                'port' => '6379'
            ],
        ],
        'page_cache' => [
            'backend' => 'Cm_Cache_Backend_Redis',
            'backend_options' => [
                'server' => '127.0.0.1',
                'port' => '6379',
                'database' => '1',
                'compress_data' => '0'
            ]
        ]
    ]],


至此就设置好了magento 2 的redis,刷新下网站,感受下速度的变化。

server 的设置项默认是使用127.0.0.1,不同的服务商可能会有不同的值,具体的需要去咨询下空间商。

若没有SSH的权限,也可以直接复制最后生成的代码到evn.php里。