• wordpress CMS主题:ssmay主题wordpress CMS主题:ssmay主题
  • 首页 > PHP开发 > memcache缓存使用(二):dos下如何操作memcache缓存服务

    memcache缓存使用(二):dos下如何操作memcache缓存服务

    作者: 分类:PHP开发 点击: 178 次
    wordpress CMS主题:ssmay主题

      上一节中我们介绍了windows服务器如何安装memcache服务,本节我们接着往下讲:如何在dos下操作memcached服务。后台,我们会讲到linux下如何安装memcache缓存服务,linux下对memcached的操作命令跟dos下操作命令是一样的。所以,后面就不介绍linux下如何操作memcached了,因为,掌握了dos下的操作,也不会了linux下的操作。

      0、启动memcached:

      以root用户启动memcached,内存64M,并发1024个

      memcached -d -p11211 -u root -m 64 -c 1024

      -d 选项是启动一个守护进程,
      -m 分配给memcached内存数量,单位是MB,默认是64MB
      -u 是运行Memcache的用户,这里是root
      -l 是监听的服务器IP地址,默认应该是本机
      -p 是设置Memcache监听的端口,默认是11211,最好是1024以上的端口
      -c 选项是最大运行的并发连接数,默认是1024,
      -P 是设置保存Memcache的pid文件位置
      -h 打印帮助信息
      -v 输出警告和错误信息
      -vv 打印客户端的请求和返回信息

      1、连接memcached服务

      d:/wamp/bin/memcached/telnet 127.0.0.1 11211 服务器地址、端口

      如果提示:telnet不是内部或外部命令... 就可能是telnet没有开启或丢失,
      如果是丢失,可以下载一个telnet.exe客户端,然后复制到c:/windows/system32/
      如果是没开启,进入【控制面版->程序和功能->打开或关闭window功能->开启】

      dos如何退出telnet? 先快捷键ctrl+j,然后再输入quit,就可以退出。

      2、增删改查

      add key1 0 50 5 添加key1,过期时间50秒,5个字符
      ggggg 添加的值ggggg

      set key1 0 50 5 修改key1,如果key1不存在,就增加
      aaaaa 修改值为aaaaa

      append key1 0 50 3 在key1的值后添加3个字符,
      bbb 最后key1的值为 aaaaabbb ,原aaaaa后添加了bbb

      prepend key1 0 50 3 在key1的值前添加3个字符

      get key1 获取查询key1
      delete key1 删除key1
      flush_all 清空所有数据

      add和set有4个参数,分别是:
      key 键名
      flag 标记。数字。如:1字符串、2反转成数组、3反序列化对象...
      expire 过期时间。可以:秒数、时间戳、0(表示不自动失效)
      length 长度

      expire为0时,并不是永不失效。
      1、memcached指定了一个最长常量默认是30天,即使设为0,30天后也会失效。
      2、可能等不到30天,就会被新数据挤出去。

      3、秒杀命令

      incr和decr这2个命令,在商品秒杀中很好用
      set num 0 50 1 #设置一个num键,50秒过期,长度1
      5 #值为 5
      STORED
      incr num 2 #让num键的值 +2
      7 #值变成了7
      decr num 1 #让num键的值 -1
      6 #值变成了6

      应用场景:秒杀功能

      多人秒杀下单,要牵涉数据库读取、写入订单、更改库存、及事务要求,
      对于传统数据库来说,压力是巨大的
      这时,可用memcached的incr和decr功能,在内存存储count库存量,
      如:秒杀1000台手机
      每人抢单主要在内存中操作,速度非常快,
      抢到count<=1000的号人,得一个订单号,再去另一个页面慢慢支付等操作。

      4、查看memcached 现状 stats

      这里主要大家可以去计算出命中率 cmd_hits/cmd_get . 越高越好.

      STAT pid 1653 进程号
      STAT uptime 10153 持续运行时间
      curr_connections: 当前连接数量
      total_connections: Memcached运行以来连接总数
      curr_items: 当前存储的数据总数
      total_items: 启动以来存储的数据总数

      cmd_get: get命令请求次数

      get_hits: get命令命中次数
      get_misses: get命令未命中次数
      缓存有一个重要的概念:命中率
      命中率 = (get_hits/cme_get)*%



      QQ二维码

    文章作者:高时银博客
    本文地址:http://wanlimm.com/77201807276233.html
    版权所有 © 转载时必须以链接形式注明作者和原始出处!

    上一篇:
    下一篇:
    wordpress CMS主题:ssmay主题

    或许你会感兴趣的文章:

    发表评论

    电子邮件地址不会被公开。 必填项已用*标注

    This site uses Akismet to reduce spam. Learn how your comment data is processed.