02 Memcache add详细介绍
1 一:Memcached add 命令参数 2 (1)add key flag expire length [增] 3 key: 键名(起一个独立的名字) 4 flag 标志,要求为一个正整数 5 备注:(1)当Memcached 要存储一个对象和数组的时候,则需要用flag,序列化成字符串取值时在反序列化成对象或数组或json格式等等。(2)只能对不存的key进行才行添加 6 expire 有效期 7 1:0 表示不失效,当不是永久的失效,如果服务器重启的情况下,那么这个Memcached也就失效了,还有一种情况就是被新的数据挤出去,也会失效或者超过memcached默认的时间也会失效,默人 是30天 ,如果超过30天那么,即使memcached之前的参数设置为0,也会失效。 8 2:大于0的数字表示有效期是多少秒,超过这个时间则会失效,取不到值, 9 3:还可以设置成时间戳格式:如12:00 运用场景如 团购,在某月某日某日某时某分某秒失效 直接设置成一个时间戳就行了,time('Y-m-d h:i:s')获取当前时间戳。 10 length 缓存的长度(字节为单位) 11 (2)delete key 可选参数[如写:10] [删] 12 不带可选参数的写法:delete str 表示 直接删除 13 带参数写法:delete str 10 表示 被删除的key,在10秒内部能再用,目的是让网站上的页面缓存也代谢完毕。 14 (3)replace key [改] 备注:只能对已经存在的key才能进行修改 15 语法格式 replace key flag expire length 用法跟add一样 16 (4)get key [查] 17 (5)set key flag expire length 用法跟add一样 18 备注:set有add和replace的功能,当进行一次set操作的时候表示 如果存在改key,则进行修改。如果不存在改key则精心添加。 19 (6)incr key 数值 [增长因子] 表示增长多少 20 decr key 数值 [减少因为子] 表示减少多少 21 备注:数值的最后结果都是在0-2^32之间 22 应用场景:秒杀功能 23 一个人下单要牵连涉及到数据库读取,写入订单,要更新库存及事务要求,对于传统的数据库来说压力是巨大的。可以用利用memeache的incr或decr功能。在内存存储count库存量,秒杀1000台, 每人在抢购的时候都是在内存中操作,速度非常快,抢到count<=1000的号人,得到一个订单号,在去另一个页面 慢慢支付。这样就可以分担mysql瞬间抢单的压力。 24 (7)stats 统计命令 25 输入stats 可以查看一下命令 26 pid 服务器进程的进程号 28 uptime 服务器自运行以来的秒数 30 time 当前服务器上的UNIX时间 32 version string 服务器的版本字符串 34 curr_items 当前在服务器上存储的数据项的个数 36 cmd_get get命令请求的次数 38 cmd_set 存储命令请求的次数 40 get_hits 关键字获取命中的次数 41 42 可以查询出缓存命中率=(查询可以得到数据的次数/查询总数)*100% 43 44 (8)flush_all 清空memcached缓存的数据 [谨慎使用这个命令]