您的位置:首页 > 数据库 > Memcache

ubuntu12.04+nginx+memcached 安装+配置 +保存session备忘(待续)

2012-11-09 10:41 369 查看
一 先讲一下ubuntu12.04下安装Memcache
sudo apt-get install memcached

memcached的基本设置:
-p 监听的端口
-l 连接的IP地址, 默认是本机,是监听的服务器IP地址,如果有多个地址的话,可以指定了服务器的IP地址192.168.0.122
-d start 启动memcached服务
-d restart 重起memcached服务
-d stop|shutdown 关闭正在运行的memcached服务
-d install 安装memcached服务
-d uninstall 卸载memcached服务
-u 以的身份运行 (仅在以root运行的时候有效)
-m 最大内存使用,单位MB。默认64MB
-M 内存耗尽时返回错误,而不是删除项
-c 最大同时连接数,默认是1024
-f 块大小增长因子,默认是1.25
-n 最小分配空间,key+value+flags默认是48
-h 显示帮助

memcached -d -m 100 -p 11211 -u root //启动命令,注意重启电脑后,memcached就会关闭,要记得再运行命令
参数说明:-m 指定使用多少兆的缓存空间;-p 指定要监听的端口; -u 指定以哪个用户来运行

安装php在memcache中的模块
sudo apt-get install php5-memcache

修改php.ini的配置(先不做,往下看)

sudo vi /etc/php5/cgi/php.ini

session.save_handler = memcache
session.save_path = “tcp://127.0.0.1:11211″

这些配置,可以先不考虑,因为可以在程序里面动态指定:

@ini_set('session.save_handler','memcache'); //可能需要加@
@ini_set('session.save_path','tcp://192.168.1.21:11211');

重新启动nginx ,有时可能需要重启电脑才有~

在php.ini中关于session

session.save_handler = files 或者 user 或者 memcache //这里三个参数分别表示 session 存储在 本地文件里 数据库里 memcache里;

session.save_path = var/lib/php5/sess* 或者某某数据库 或者 tcp://192.168.1.21:11211 //对应存放路径;

通常有memcache就存memcache里,这比读文件快速的多~当多台web服务器运行时,可以共享一台memcache服务器。

<?php
session_start();
if (!isset($_SESSION['TEST'])) {
$_SESSION['TEST'] = time();
}

$_SESSION['TEST3'] = time();

print $_SESSION['TEST'];
print "<br><br>";
print $_SESSION['TEST3'];
print "<br><br>";
print session_id();
?>

6. 用 sessionid 去 memcached 里查询一下:

<?php
$memcache = memcache_connect('localhost', 11211);
var_dump($memcache->get('19216821213c65cedec65b0883238c278eeb573e077'));
?>

会有看到string(37) "TEST|i:1177556731;TEST3|i:1177556881;"

ubuntu上用files类型时:

liang@liang-OptiPlex-390:/var/lib/php5$ ls
sess_yemanrentest //会生成这个文件

查看memcached内部配置

$sudo telnet localhost 11211

如果连接不上再跑一遍:memcached -d -m 100 -p 11211 -u root //启动命令

$stats 显示memcached内部配置信息

比较好的memcached内部分析连接:
http://www.2cto.com/os/201203/125164.html http://www.cnblogs.com/technet/archive/2011/09/11/2173485.html http://tech.idv2.com/2008/07/10/memcached-001/ http://www.cnblogs.com/czh-liyu/archive/2010/04/27/1722084.html
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: