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

一 先讲一下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

posted @ 2012-11-09 10:41  zyliang  阅读(486)  评论(0编辑  收藏  举报