• Windows下的Memcache安装


    memcached  for win32 下载地址:http://download.csdn.net/detail/lixiaomingcdn/5684807
    php_memcache.dll 下载地址:http://download.csdn.net/detail/lixiaomingcdn/5684721
    Windows下的Memcache安装:
    1. 下载memcache的windows稳定版,解压放某个盘下面,比如在c:memcached
    2. 在终端(也即cmd命令界面)下输入 ‘c:memcachedmemcached.exe -d install’ 安装
    3. 再输入: ‘c:memcachedmemcached.exe -d start’ 启动。NOTE: 以后memcached将作为windows的一个服务每次开机时自动启动。这样服务器端已经安装完毕了。
    4.下载php_memcache.dll,请自己查找对应的php版本的文件
    5. 在C:winntphp.ini 加入一行 ‘extension=php_memcache.dll’
    6.重新启动Apache,然后查看一下phpinfo,如果有memcache,那么就说明安装成功!
    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文件,如果有输出This is a test!,就表示环境搭建成功。开始领略Memcache的魅力把!


    <</span> ?php
    $mem = new Memcache;
    $mem->connect(”127.0.0.1″, 11211);
    $mem->set(’key’, ‘This is a test!’, 0, 60);
    $val = $mem->get(’key’);
    echo $val;
    ?>


    Memcached在WIN32下的相关设置
     


    1.在WIN32下 无法使用命令更改内存大小,端口等 ,只能通过修改注册表实现
    有些命令需要通过服务参数来执行,我们可以用下面方法修改这些服务参数。修改前先停止 memcached 服务。
    (1) 打开注册表,找到 HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesmemcached Server。
    (2) 修改 ImagePath 项,比如 ""C:memcachedmemcached.exe" -d runservice -m 100 -p 1234",这样服务启动后监听端口就成了 1234,最大缓存内存就是 100 MB。
    2.可以通过telnet 查看当前状态




    telnet 192.168.1.2 11211
    stats


    ----------------------------------------
    STAT pid 3932   --进程ID
    STAT uptime 137
    STAT time 1207723245
    STAT version 1.2.1  --版本号
    STAT pointer_size 32
    STAT curr_items 999999  --当前ITEM 激活中的
    STAT total_items 999999  --总ITEM
    STAT bytes 51888843
    STAT curr_connections 5  --当前连接数
    STAT total_connections 6 --总连接数
    STAT connection_structures 6
    STAT cmd_get 0   --进行GET的次数
    STAT cmd_set 999999  --进行SET的次数
    STAT get_hits 0   --命中数
    STAT get_misses 0  --命中失败数
    STAT bytes_read 24888902
    STAT bytes_written 8000378
    STAT limit_maxbytes 524288000 --分配的总内存空间
    END


     
    当SET一个已有的ITEM时,total_items 会加1,curr_items 不会改变
    Memcached采用LRU(Least Recently Used:最近最少被使用)算法,对长时间没有SET的ITEM会作为垃圾处理,在分配的内存空间不足的情况下,当有新的ITEM进来,会踢掉最老的一个ITEM
    在分配64M空间的情况下,插入50W个ITEM,
    curr_item  314568
    total_item 499999
    就是说64M只能放314568个ITEM,有十多万 item是被当作垃圾踢掉了.
    当把内存增加到500M时,情况不同了
    STAT curr_items 999999  
    STAT total_items 999999  
  • 相关阅读:
    uglifyjs2压缩混淆js文件
    Html5应用程序缓存ApplicationCache
    nginx搭建笔记
    Free git private repo
    编程哲学之 C# 篇:007——如何创造万物
    编程哲学之 C# 篇:003——为什么选择 C#
    编程哲学之 C# 篇:004——安装 Visual Studio
    编程哲学之 C# 篇:006——什么是 .NET
    编程哲学之 C# 篇:005——"Hello,World!"
    为什么要使用Entity Framework
  • 原文地址:https://www.cnblogs.com/hzcya1995/p/13318423.html
Copyright © 2020-2023  润新知