阿里云最近更新得很勤快,各种服务都开始逐渐浮出水面,其中就有云数据库Mecache和Redis,外带可视化界面管理,这对于维护监测来说,可是个好东西,本文介绍一下如何让ecstore支持阿里云的Memcache。
阿里云上购买好memcache十分方便快捷,付钱即可,瞬间开通,购买的时候记得如果要用内网功能的话,需要买同一区域的,不同区域的内网是连接不上的。买完后得到以下信息。
打开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:★★★★★
这个挺好的
修改2个配置,到是挺简单