• memcached教程(一)memcached的下载与安装
  • 马克吐钱 发表于 2015/9/27 15:00:00 | 分类标签: memcached教程
  • 今天我们开始memcached教程的第一节: memcached的下载与安装
    首先大家可以去memcached的官网下载最新版本的:点击下载最新版memcached,我这边下载的是win32版本的.

    1. 下载 memcached-win32-1.4.4-14.zip ,里面包含6个文件,将解压后的文件夹随便放在什么位置。如果需要win64版,下载 memcached-win64-1.4.4-14.zip ,里面有个三个文件,用这三个文件覆盖win32下同名文件。

    2. 以管理员身份运行 cmd.exe,并转至memcached所在文件夹,比如: cd c:\memcached 。(如果不以管理员身份运行,将得到报错“failed to install service or service already installed”)

    3. 安装memcached:  

    c:\memcached> memcached.exe -d install

    (之后屏幕无任何提示)

    4. 启动memcached:

    c:\memcached> memcached.exe -d start

    (之后屏幕无任何提示,但是在“任务管理器”中勾选“显示所有用户进程”,此时可以看到memcached.exe进程正在运行)默认端口11211,外部访问需要开放该端口,否则无法成功连接。

    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 显示帮助

    设置参数时需要先停止memcached,然后用命令行设置,比如:c:\memcached> memcached.exe -m 1 -d start

    6. 停止memcached:

    c:\memcached> memcached.exe -d stop

    7. 卸载memcached:

    c:\memcached> memcached.exe -d uninstall

    相关问题:

    1. 设置最大占用内存后好像没起作用。

    -m tells memcached how much RAM to use for item storage (in megabytes). Note carefully that this isn't a global memory limit, so memcached will use a few % more memory than you tell it to. Set this to safe values. Setting it to less than 48 megabytes does not work properly in 1.4.x and earlier. It will still use the memory.

    转自:http://stackoverflow.com/questions/6112324/memcached-using-more-than-max-memory

    参考:https://code.google.com/p/memcached/wiki/NewConfiguringServer

    2. 在同一个程序集里将一个值放入到memcache里,马上去时可以取到,但是在另一个程序集里取的时候取不到,或者telnet也拿不到值。

    可能问题及解决办法:

        a. 存储的值序列化后不同类型,则需要将其更新为同一类型,建议使用同一的常见类型,如string,int等,放入string可以拼成一个xml字符串,然后到使用的时候在做解析

        b. 很有可能是memcache池已经满了,可以设置<socketPool minPoolSize="100" maxPoolSize="1000" connectionTimeout="00:10:00" deadTimeout="00:02:00"/>

  • 请您注意

    ·自觉遵守:爱国、守法、自律、真实、文明的原则

    ·尊重网上道德,遵守《全国人大常委会关于维护互联网安全的决定》及中华人民共和国其他各项有关法律法规

    ·严禁发表危害国家安全,破坏民族团结、国家宗教政策和社会稳定,含侮辱、诽谤、教唆、淫秽等内容的作品

    ·承担一切因您的行为而直接或间接导致的民事或刑事法律责任

    ·您在编程中国社区新闻评论发表的作品,本网站有权在网站内保留、转载、引用或者删除

    ·参与本评论即表明您已经阅读并接受上述条款

  • 感谢本文作者
  • 作者头像
  • 昵称:马克吐钱
  • 加入时间:2014/12/2 21:27:00
  • TA的签名
  • 这家伙很懒,虾米都没写
  • +进入TA的空间
  • 以下内容也很赞哦
分享按钮