• Windows下的Memcache安装与测试教程


    Windows下的Memcache安装
    1、下载memcache for windows。

    下载地址:http://splinedancer.com/memcached-win32/,推荐下载binaries版本,

    解压(本例中解压到e:memcached-1.2.4)。
    2、安装memcache,

    在命令行状态下输入: e:/memcached-1.2.4/memcached.exe -d install 。至此memcached已经安装成windows服务
    3、启动memcache,

    在命令行下输入: e:/memcached-1.2.4/memcached.exe -d start 以启动memcached服务。

    或者也可以选择在windows服务中启动


    到此,memcache的服务器端就准备完毕,接下来需要安装php的memcache扩展,


    php安装Memcached模块支持
    1、下载php_memcache.dll模块,

    你可以从http://downloads.php.net/pierre/找到对应的版本,
    php5.3对应php_memcache-2.2.6-5.3-vc9-x86.zip

    将php_memcache.dll放到php\ext目录下,

    2、修改php.ini来加入扩展,并并重启apache服务器

    加入extension=php_memcache.dll、重启apache服务器,

    然后查看一下phpinfo,如果有memcache,那么就说明安装成功!


    测试windows下的Memcached
    测试代码如下:

    [php] view plaincopy
    1. <?php  
    2. $mem = new Memcache;  
    3. $mem->connect("127.0.0.1", 11211);  
    4. $mem->set('key''Hello Memcached!', 0, 60);  
    5. $val = $mem->get('key');  
    6. echo $val;  
    7. ?>  

    Example #1 memcache extension overview example

    In this example, an object is being saved in the cache and then retrieved back. Object and other non-scalar types are serialized before saving, so it's impossible to store resources (i.e. connection identifiers and others) in the cache.

    [php] view plaincopy
    1. <?php  
    2. $memcache = new Memcache;  
    3. $memcache->connect('localhost', 11211) or die ("Could not connect");  
    4. $version = $memcache->getVersion();  
    5. echo "Server's version: ".$version."<br/>n";  
    6. $tmp_object = new stdClass;  
    7. $tmp_object->str_attr = 'test';  
    8. $tmp_object->int_attr = 123;  
    9. $memcache->set('key'$tmp_object, false, 10) or die ("Failed to save data at the server");  
    10. echo "Store data in the cache (data will expire in 10 seconds)<br/>n";  
    11. $get_result = $memcache->get('key');  
    12. echo "Data from the cache:<br/>n";  
    13. var_dump($get_result);  
    14. ?>  

    Example #2 Using memcache session handler
    [php] view plaincopy
    1. <?php  
    2. $session_save_path = "tcp://$host:$port?persistent=1&weight=2&timeout=2&retry_interval=10,  ,tcp://$host:$port  ";  
    3. ini_set('session.save_handler''memcache');  
    4. ini_set('session.save_path'$session_save_path);  
    5. ?>  



    memcached的基本设置:

    -p 监听的端口
    -l 连接的IP地址, 默认是本机
    -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 显示帮助

    接口介绍

    Memcache客户端包含两组接口,一组是面向过程的接口,一组是面向对象的接口,具体可以参考PHP手册 “LXXV. Memcache Functions” 这章。

    Memcache面向对象的常用接口包括:
    Memcache::connect — 打开一个到Memcache的连接
    Memcache::pconnect — 打开一个到Memcache的长连接
    Memcache::close — 关闭一个Memcache的连接
    Memcache::set — 保存数据到Memcache服务器上
    Memcache::get — 提取一个保存在Memcache服务器上的数据
    Memcache::replace — 替换一个已经存在Memcache服务器上的项目(功能类似Memcache::set)
    Memcache::delete — 从Memcache服务器上删除一个保存的项目
    Memcache::flush — 刷新所有Memcache服务器上保存的项目(类似于删除所有的保存的项目)
    Memcache::getStats — 获取当前Memcache服务器运行的状态
    Memcache::addServer — 分布式服务器添加一个服务器

  • 相关阅读:
    (Java实现) 洛谷 P1603 斯诺登的密码
    (Java实现) 洛谷 P1036 选数
    (Java实现) 洛谷 P1036 选数
    (Java实现) 洛谷 P1012 拼数
    (Java实现) 洛谷 P1012 拼数
    (Java实现) 洛谷 P1028 数的计算
    (Java实现) 洛谷 P1028 数的计算
    (Java实现) 洛谷 P1553 数字反转(升级版)
    8.4 确定两个日期之间的月份数或年数
    (Java实现) 洛谷 P1553 数字反转(升级版)
  • 原文地址:https://www.cnblogs.com/beyondhjjyt/p/3046562.html
Copyright © 2020-2023  润新知