首页 » Ecstore » Ecstore使用阿里云数据库Memcache版

Ecstore使用阿里云数据库Memcache版

8484 2

阿里云最近更新得很勤快,各种服务都开始逐渐浮出水面,其中就有云数据库Mecache和Redis,外带可视化界面管理,这对于维护监测来说,可是个好东西,本文介绍一下如何让ecstore支持阿里云的Memcache。

阿里云上购买好memcache十分方便快捷,付钱即可,瞬间开通,购买的时候记得如果要用内网功能的话,需要买同一区域的,不同区域的内网是连接不上的。买完后得到以下信息。
截图00

打开config.php文件,找到cache memcache配置项,根据上图截图填入对应内容,大致如下:

// cache memcache 服务器配置
define('CACHE_MEMCACHE_CONFIG', 'test.m.aliyun.com:11211');
define('MEMCACHE_USER','user');
define('MEMCACHE_PASSWORD','');
define('CACHE_STORAGE', 'base_cache_memcached');

到这里配置文件修改完毕,由于ecstore默认的memcached加载是不带密码访问的,所以这里稍微需要调整一下代码,找到/base/lib/cache/memcached.php文件,修改下面信息:

public function connect() 
    {
        ...
        if(strpos($row, 'unix://') === 0){
               //self::$_cacheObj->addServer($row, 0);  todo:memcached不支持unix://
        }else{
               $tmp = explode(':', $row);
               self::$_cacheObj->addServer($tmp[0], $tmp[1]);
               //启用带用户验证的阿里云memcache
               if(defined('MEMCACHE_USER') && defined('MEMCACHE_PASSWORD')){
	             //by tiandi 使用sasl时需要先启用binary_protocal
		     self::$_cacheObj->setOption(Memcached::OPT_BINARY_PROTOCOL, true);
                     self::$_cacheObj->setSaslAuthData(MEMCACHE_USER, MEMCACHE_PASSWORD);
        }
        ...
}

好了,就只需要改动这两个地方,如无意外,已经可以开始使用阿里云Memcache服务了。相比在本地环境下搭建Memcached服务,共同耗用系统资源来说,这种分割还是可以减轻服务器一定的压力的。一般起步阶段,还没有人会为了Memcached单独建一个本地服务器的吧。

文章评分1次,平均分5.0

本文原始地址:https://www.tiandiyoyo.com/2016/03/how-to-use-aliyun-memcache-on-ecstore/
本站所有文章,除了特别注明外,均为本站原创,转载请注明出处来自www.tiandiyoyo.com

您可能还会对以下文章感兴趣:

评论前先开启评论开关:


2 Comments

  1. 修改2个配置,到是挺简单

载入分页评论...