欢迎投稿

今日深度:

memcached介绍和基本命令

memcached介绍和基本命令


【介绍】:

Memcached 是一个高性能的分布式内存对象缓存系统,用于动态Web应用以减轻数据库负载。它通过在内存中缓存数据和对象来减少读取数据库的次数,从而提供动态、数据 库驱动网站的速度。Memcached基于一个存储键/值对的hashmap。其守护进程(daemon )是用C写的,但是客户端可以用任何语言来编写,并通过memcached协议与守护进程通信。

【特点】:

1. 协议简单

2. 基于libevent的事件处理

3. 内置内存存储方式

4. 采用不互相通信的分布式

【缺点】:

1. 重启memcached服务器或者操作系统会使数据消失

2. 内存容量达到指定值之后,就会使用LRU算法自动删除不使用或者很少使用的缓存。

Memcached启动选项:

选项

描述

-d

以守护程序(daemon)方式运行memcached

-m

设置memcached可以使用内存的大小,单位为MB

-l

设置监听的IP地址

-p

设置监听的端口,默认为11211

-u

指定用户,通常使用该选项指定为root用户

 

启动memcached:

Memcached –vvv

Memcached客户端与服务器端的通信使用文本协议,可以使用telnet与memcached交互。

如:telnet127.0.0.1 11211(memcached默认端口是11211)

按下ctrl + ] 打开回显功能。

 

\

\

 

Memcached命令:

1. 增:add往内存中增加一行新纪录

语法:add key flag expire length

1)Key:值的名字

2)Flag:标志,是一个正整数

当往内存中存数组或者对象等时,就需要flag标志。序列化成字符串,取出时反序列化成相应的格式。

1. 字符串

2. 反转成数组

3. 反序列化对象

 

3)Expire:有效期,N秒后结束。设为0不自动失效,但30天后失效,也有可能被新数据挤出去。

设置10秒后失效:

\

 

4)Length:缓存的长度,字节为单位

2. 删

 

\

可以加上秒数,让该key在N秒内不能使用,使网站上的页面缓存代谢完毕。

Replace可对于已经存在的键进行更改。

Set命令有add和replace两者的功能。没有键可以增加,有可以更改。

Incr和decr命令:

\

 

把值当成32位无符号位来操作。

应用场景:

秒杀功能,秒杀主要在内存功能,速度很快。

 

Stats :统计命令

\

\

a. pid:memcached运行的进程号

b. uptime:运行时间

c. time:当前的时间戳

d. version:当前版本

e. total_items:历史存储的键数

f. curr_items:当前存储的键数

g. cmd_get:总共向memcached服务器请求的次数

h. get_hits:响应成功的次数

i. get_misses:失败的次数

通过这三个可以求出缓存命中率。命中率越高越优秀。

Flush_all:清除缓存对象(慎用);

www.htsjk.Com true http://www.htsjk.com/sybase/19706.html NewsArticle memcached介绍和基本命令 【介绍】: Memcached 是一个高性能的分布式内存对象缓存系统,用于动态Web应用以减轻数据库负载。它通过在内存中缓存数据和对象来减少读取数据库的次数,从...
评论暂时关闭