memcached基础介绍

一.memcached简介

Free & open source, high-performance, distributed memory object caching system, generic in nature, but intended for use in speeding up dynamic web applications by alleviating database load.
Memcached是一款免费及开源,高性能和分布式存储对象的缓存系统,具有通用性,但其应用目的是通过减少DB穿透,提高动态Web应用的速度。

Memcached is an in-memory key-value store for small chunks of arbitrary data (strings, objects) from results of database calls, API calls, or page rendering.
Memcached可以存储调用DB,调用接口或页面渲染的任意结果数据(字符串,对象),以key-value的形式存储这些小块数据。

Memcached is simple yet powerful. Its simple design promotes quick deployment, ease of development, and solves many problems facing large data caches. Its API is available for most popular languages.
Memcached是轻便的,但是它功能强大。它轻便的设计提高了快速部署,降低了开发难度和解决了大数据缓存的许多问题。它的API支持大多流行编程语言。

二.memcached安装及使用

1.安装memcached

1)下载安装包:
wget http://www.memcached.org/files/memcached-1.4.24.tar.gz
2)解压安装包及安装
tar -xzvf memcached-1.4.24.tar.gz
./configure
make && make install
查看是否安装成功
memcached -h
会提示你安装的版本,及可选参数
3)启动服务
memcached -d -m 100 -u root -l 10.13.1.139 -p 7000 -c 1024 -P /tmp/memcached.pid
参数介绍:
d:以守护进程运行
m:分配的最大存储空间(单位MB,默认64M)
u:运行的用户类型
l:监听的ip
p:监听的port
c:最大连接数
P:进程号的保存文件
测试连接:telnet 10.13.1.139 7000
这里写图片描述
安装成功。

2.使用memcached

1)终端下直接操作
(1)存储命令
命令格式:
<command name> <key> <flags> <exptime> <bytes>
<data block>
<command name>:set,add,replace,append,prepend,cas
<key>:数据的key
<flags>:16位无符号整数(10进制),该标记在get数据时返回,可作为特殊标记。
<exptime>:过期时间,0:不过期,但元素可被LRU替换;非0(unix时间戳),过期后,数据失效。
<bytes>:分配给value的字节数。
<data block>:存储的数据块。
(1-1)set,直接存储数据,如果key已存在,则直接替换。
这里写图片描述

(1-2)add:只有数据不存在时,才能添加;如果key已经存在,则添加失败,该元素重提到LRU最前端。
这里写图片描述

(1-3)replace:替换已存在的数据。
这里写图片描述

(1-4)append:在现有的key对应的value值后添加数据,flags要一致。
这里写图片描述

(1-5)prepend:在现有的key对应的value值前添加数据。
这里写图片描述

(1-6)cas:(Check And Set),从你最近一次读时,未有任何更新数据,才进行set,附件一个参数CAS,与gets得到的CAS一致才能添加。
这里写图片描述
当操作后,服务器将返回一个应答:
1.STORED,存储成功。
2.NOT_STORED,存储失败。
3.CLIENT_ERROR bad data chunk,分配的字节数不够。

(2)检索命令
(2-1)get: 根据key,取value,可以一个或多个key。
这里写图片描述
(2-2)gets:get扩充,附加CAS (a unique 64bit number),标记元素操作。
这里写图片描述
(2-3)delete:删除元素。
这里写图片描述

(2-4)stats:查询Memcached统计信息,进程id,连接数,命中率等信息。
stats reset: 清空统计信息。
stats items:slab中item的数目和最老item的年龄(最后一次访问距离现在的秒数)等,图中的1,表示slab_id。
这里写图片描述
stats cachedump slab_id limit_num:某个slab中的前limit_num个key列表,limit_num为0显示所有记录,为n显示n条。
这里写图片描述
格式:ITEM <key_name> [ <value_length> b; <expire_time|access_time> s]
stats slabs: 各个slab的信息,包括chunk的大小、数目、使用情况。
flush_all:清空所有键值,在随后有新的元素被储存时执行。
quit:退出。
2)可视化工具memAdmin
基于 PHP5 & JQuery 的 Memcached 管理监控工具:http://www.junopen.com/memadmin/

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值