安装
yum install memcached
安装完phpinfo测试, 看php是否已经支持. 如果没有 ,则需要
php.ini文件中增加
extension = "memcache.so"
启动
/bin/memcached -d -m 1024 -u root -l 127.0.0.1 -p 11211 -c 1024 -P /tmp/memcached.pid
-d选项是启动一个守护进程,
-m是分配给Memcache使用的内存数量,单位是MB,我这里是1024MB,
-u是运行Memcache的用户,我这里是root,
-l是监听的服务器IP地址,如果有多个地址的话,我这里指定了本地服务器的IP地址
-p是设置Memcache监听的端口,我这里设置了11211,最好是1024以上的端口,
-c选项是最大运行的并发连接数,默认是1024,按照你服务器的负载量来设定,
-P是设置保存Memcache的pid文件,我这里是保存在 /tmp/memcached.pid,
检查是否启动成功
ps aux | grep memcached
Yii中使用
web.php配置文件中, cache配置
'components' => [
'cache' => [
'class' => 'yii\caching\MemCache',
'servers' => [
[
'host' => '127.0.0.1',
'port' => 11211,
'weight' => 60,
]
,
[
'host' => 'server2',
'port' => 11211,
'weight' => 40,
],
],
],...
php测试
任何一个控制器中,测试
Yii::$app->cache->set('name', $arr);
echo Yii::$app->cache->get('name');
安装好后设置开机自启动
打开这个文件 /etc/rc.d/rc.local
/bin/memcached -d -m 512 -u root -l 127.0.0.1 -p 11211 -c 1024 -P /tmp/memcached.pid
以下内容不用.. 这个我个人的项目需要.
设置任务启动
45 6 * * * /sbin/reboot
* * * * * /bin/sh /home/crontab.sh
crontab 文件如下
#!/bin/bash
step=30
for (( i = 0; i < 60; i=(i+step) )); do
curl 'http://www.123.com/index.php?r=public%2Ffix'
sleep $step
done
exit 0