zoukankan      html  css  js  c++  java
  • 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

    1、以专家为榜样,不必自己重新探索
    2、解构技能,找出实现80%效果的那20%
    3、不要一心二用
    4、练习练习再练习!然后获得即时反馈
    5、坚持,不要在低谷期放弃
  • 相关阅读:
    直接插入排序学习笔记
    选择排序学习笔记
    冒泡排序学习笔记
    阿里云ssl证书申请及域名绑定流程
    Nginx user_agent、if指令及全局变量
    rewrite和return笔记
    rewrite和return的简单需求
    Nginx Rewrite正则表达式案例
    linux下WordPress伪静态规则设置
    集群前后端分离(api接口)
  • 原文地址:https://www.cnblogs.com/zhongyuan/p/2762166.html
Copyright © 2011-2022 走看看