前言

本文档是针对Memcached使用及常见问题的说明。

一.获取

1. MemCached

官网:http://www.memcached.org

下载:http://memcached.org/latest

2. libevent

http://www.monkey.org/~provos/libevent/

https://sourceforge.net/projects/levent/files/libevent/libevent-2.0/libevent-2.0.22-stable.tar.gz

3. README

获取Memcached,查看README

二.Linux常用命令

  1. 1. wget
  2.  
  3. 1wget [参数] [URL地址]
  4.  
  5. 2wget http://memcached.org/latest
  6.  
  7. 2. make
  8.  
  9. 1)./configure --prefix= usr/local
  10.  
  11. 2make
  12.  
  13. 3make install
  14.  
  15. 4)配置(configure)、编译(make)、安装(make install)。
  16.  
  17. 5)./configure --help
  18.  
  19. 3.telnet
  20.  
  21. 1telnet [host [port]]
  22.  
  23. 2telnet 172.16.50.238 11211
  24.  
  25. 3)提示Escape character is '^]'
  26.  
  27. 4Ctrl + ] 呼出 telnet 命令行
  28.  
  29. 5)命令描述
  30.  
  31. close close current connection
  32.  
  33. logout forcibly logout remote user and close theconnection
  34.  
  35. display displayoperating parameters
  36.  
  37. mode try to enter line or character mode ('mode ?'for more)
  38.  
  39. open connect to a site
  40.  
  41. quit exit telnet
  42.  
  43. send transmit special characters ('send ?' formore)
  44.  
  45. set set operating parameters ('set ?' for more)
  46.  
  47. unset unset operating parameters ('unset ?' formore)
  48.  
  49. status print status information
  50.  
  51. toggle toggle operating parameters ('toggle ?' formore)
  52.  
  53. slc change state of special charaters ('slc ?' formore)
  54.  
  55. auth turn on (off) authentication ('auth ?' formore)
  56.  
  57. encrypt turnon (off) encryption ('encrypt ?' for more)
  58.  
  59. forward turnon (off) credential forwarding ('forward ?' for more)
  60.  
  61. z suspend telnet
  62.  
  63. ! invoke a subshell
  64.  
  65. environ changeenvironment variables ('environ ?' for more)
  66.  
  67. ? print help information
  68.  
  69. 4.netstat
  70.  
  71. 1)常见参数 netstat --help
  72.  
  73. -a displayall sockets (default: connected)
  74.  
  75. -n don'tresolve names
  76.  
  77. -l displaylistening server sockets
  78.  
  79. -p display PID/Program name for sockets
  80.  
  81. -r displayrouting table
  82.  
  83. -e displayother/more information
  84.  
  85. -s displaynetworking statistics (like SNMP)
  86.  
  87. -c continuouslisting
  88.  
  89. 2)- 和 -- 即 简写 和 全拼

View

三.启动MemCached 服务

1.安装libevent

1)进入libevent解压目录

2)./configure --prefix=/usr/local/libevent

3)make

4)make install

5)产生

/usr/local/libevent/bin

/usr/local/libevent/lib

/usr/local/libevent/include

2.安装MemCache

1)进入MemCache解压目录

2)./configure --prefix=usr/local/memcached--with-libevent=usr/local/libevent

3)make

4)make install

5)产生

/usr/local/memcached/bin

/usr/local/memcached/include

/usr/local/memcached/share

6)with-libevent 为依赖包名,见./configure --help

3.执行命令启动服务

1)进入安装目录bin

2)./memcached -d -u root

3)详细参数 ./memcached -help 查看

-p      监听的TCP端口(默认: 11211)

-U     监听的UDP端口(默认: 11211, 0表示不监听)

-l       监听的IP地址,即访问权限(默认:INADDR_ANY,所有地址)

-d      作为守护进程来运行,不依赖终端,系统关闭时退出

-u      设定进程所属用户(只有root用户可以使用这个参数)

-m     单个数据项的最大可用内存,以MB为单位(默认:64MB)

-M     内存用光时报错(而不是删除数据)

-c      最大并发连接数(默认:1024)

-v      提示信息(在事件循环中打印错误/警告信息。)

-P      保存进程ID到指定文件,只有在使用 -d 选项的时候才有意义。

-f      块大小增长因子。(默认:1.25)

-n      分配给key+value+flags的最小空间(默认:48 bytes)

-t       使用的线程数(默认:4)

-b      设置后台日志队列的长度(默认:1024)

-B     绑定协议 - 可能值:ascii,binary,auto(默认)

4)netstat -lp|grep memcached 查看服务是否启动

4.查看服务是否启动成功

1)netstat -lp|grep memcached

5.测试服务

1)telnet 172.16.50.238 11211

2)命令格式

<command name> <key> <flag> <expire> <bytes> 
<data block>
参数
用法
command name 命令名称
key 查找关键字
flag 存储额外信息
expire 数据保存时间,0表示永远,单位秒
bytes 存储数据的字节数
data block 存储的数据(始终位于第二行)

输入set id1 0 0 9

输入123456789

显示STORED

输入get id1

显示VALUE id1 0 9

显示123456789

显示END

6.关闭服务

1)kill [PID]

四.命令

1. set

1)说明:存在时替换,不存在时添加。正确操作时响应STORED ,操作错误时响应CLIENT_ERROR baddata chunk 。bytes 需对应data block 大小。

2)正确示例:

set id1 0 0 9

123456789

STORED

2.add

1)说明:只有不存在时添加。key存在时响应 NOT_STORED 。

2)正确示例:

add id2 0 0 9

987654321

STORED

3.replace

1)说明:只替换已存在的key值。key 不存在时响应NOT_STORED 。

2)正确示例:

replace id1 0 0 9

123123123

STORED

4.get

1)说明:key存在时响应内容,不存在时响应内容为空。

2)正确示例:

get id1

VALUE id1 0 9

123123123

END

5.delete

1)说明:key不存在时响应NOT_FOUND

2)正确示例:

delete id1

DELETED

6. flush_all

1)说明:使已经存在的项目立即失效(缺省)

7.gets

1)说明:额外返回N , N为全局变量第N次修改。add id1 N=1 addid2 N=2 set id1 N=3 ,gets id1 额外返回3

2)正确示例:

gets id1

VALUE id1 0 1 17

d

END

8.cas

1)说明:checked and set ,校验N 是否一致。

2)正确示例:

gets id2

VALUE id2 0 1 22

a

END

cas id2 0 0 1 22

b

STORED

9.append

1)说明:追加到右

2)正确示例:

get id2

VALUE id2 0 1

b

END

append id2 0 0 2

cd

STORED

get id2

VALUE id2 0 3

bcd

END

10.prepend

1)说明:追加到左。生命依附于被追加对象。被追加对象必须存在,否则NOT_STORED

2)正确示例:

prepend id3 0 0 1

11. stats

1)说明:查看状态

2)如下:

STAT pid 18820       进程id

STAT uptime 9822   运行时间秒

STAT time 1427274119    当前系统时间

STAT version 1.4.22 版本号

STAT libevent 2.0.22-stable

STAT pointer_size 64

STAT rusage_user 0.006998    累计用户时间秒

STAT rusage_system 0.013997 累计系统时间秒

STAT curr_connections 5 当前连接数

STAT total_connections 11      运行以来接收连接数

STAT connection_structures 6  分配的连接结构数量

STAT reserved_fds 20

STAT cmd_get 65

STAT cmd_set 43

STAT cmd_flush 1

STAT cmd_touch 0

STAT get_hits 50             get命中次数

STAT get_misses 15         get丢失次数

STAT delete_misses 5

STAT delete_hits 5

STAT incr_misses 0

STAT incr_hits 0

STAT decr_misses 0

STAT decr_hits 0

STAT cas_misses 0

STAT cas_hits 1

STAT cas_badval 0

STAT touch_hits 0

STAT touch_misses 0

STAT auth_cmds 0

STAT auth_errors 0

STAT bytes_read 1994            从网络读取到的总字节数

STAT bytes_written 2296        向网络发送的总字节数

STAT limit_maxbytes 67108864     允许使用总字节数,对应-m 设置的值

STAT accepting_conns 1

STAT listen_disabled_num 0

STAT threads 4

STAT conn_yields 0

STAT hash_power_level 16

STAT hash_bytes 524288

STAT hash_is_expanding 0

STAT malloc_fails 0

STAT bytes 73 已使用字节数

STAT curr_items 1

STAT total_items 33

STAT expired_unfetched 1

STAT evicted_unfetched 0

STAT evictions 0

STAT reclaimed 4

STAT crawler_reclaimed 0

STAT lrutail_reflocked 0

12.stats item

1)说明:是不是查看集群信息。可以查看记录数量。

stats items

STAT items:1:number 3

STAT items:1:age 60

STAT items:1:evicted 0

STAT items:1:evicted_nonzero 0

STAT items:1:evicted_time 0

STAT items:1:outofmemory 0

STAT items:1:tailrepairs 0

STAT items:1:reclaimed 4

STAT items:1:expired_unfetched 1

STAT items:1:evicted_unfetched 0

STAT items:1:crawler_reclaimed 0

STAT items:1:lrutail_reflocked 0

END

13. stats cachedump slabs_id limit_num

1)说明:slabs_id:由stats items返回的结果(STAT items后面的数字)决定的;limit_num:返回的记录数,0表示返回所有记录;通过stats items、stats cachedumpslab_id limit_num配合get命令可以遍历memcached的记录。从A#缓存堆取B条数据。

2)正确示例:

stats cachedump 1 0

ITEM id3 [1 b; 1427264237 s]

ITEM id2 [5 b; 1427264237 s]

ITEM id1 [1 b; 1427264237 s]

END

14. stats slabs

1)说明:显示各个slab的信息,包括chunk的大小、数目、使用情况等

15. stats sizes

1)说明:输出所有item的大小和个数

16. stats reset

1)说明:清空统计数据

MemCahced 使用及常见问题说明的更多相关文章

  1. C++常见笔试面试要点以及常见问题

    1. C++常见笔试面试要点: C++语言相关: (1) 虚函数(多态)的内部实现 (2) 智能指针用过哪些?shared_ptr和unique_ptr用的时候需要注意什么?shared_ptr的实现 ...

  2. SQL Server常见问题介绍及快速解决建议

    前言 本文旨在帮助SQL Server数据库的使用人员了解常见的问题,及快速解决这些问题.这些问题是数据库的常规管理问题,对于很多对数据库没有深入了解的朋友提供一个大概的常见问题框架. 下面一些问题是 ...

  3. 【腾讯优测干货分享】如何降低App的待机内存(二)——规范测试流程及常见问题

    本文来自于腾讯优测公众号(wxutest),未经作者同意,请勿转载,原文地址:https://mp.weixin.qq.com/s/806TiugiSJvFI7fH6eVA5w 作者:腾讯TMQ专项测 ...

  4. mysql数据库开发常见问题及优化

    mysql 数据库是被广泛应用的关系型数据库,其体积小.支持多处理器.开源并免费的特性使其在 Internet 中小型网站中的使用率尤其高.在使用 mysql 的过程中不规范的 SQL 编写.非最优的 ...

  5. 《PDF.NE数据框架常见问题及解决方案-初》

    <PDF.NE数据框架常见问题及解决方案-初> 1.新增数据库后,获取标识列的值: 解决方案:    PDF.NET数据框架,已经为我们考略了很多,因为用PDF.NET进行数据的添加操作时 ...

  6. MIS性能优化常见问题与方案(辅助项目组性能优化的总结贴)

    最近帮忙公司的几个项目组进行了不同方面的性能优化,发现几个项目都出现了一些共性的问题.这里写一篇文章,总结一下这几类问题,以及其对应的解决方案.方便其它项目组参考.   常见问题一:打开页面非常慢,有 ...

  7. JMeter常见问题集合

    前言 本文内容仅仅是针对Jmeter的部分功能名词的介绍和解释,以及初学者不易理解的问题的整理.部分内容来自别人做的整理,为了更好地整理自己的思路,所以可耻的整理一下发到博客上. 标题[1-6]和[参 ...

  8. NHibernate常见问题及解决方法

    NHibernate常见问题及解决方法 曾经学过NHibernate的,但是自从工作到现在快一年了却从未用到过,近来要巩固一下却发现忘记了许多,一个"in expected: <end ...

  9. .NET Core中ADO.NET SqlClient的使用与常见问题

    一.简介 在很多要求性能的项目中,我们都要使用传统的ADO.NET的方式来完成我们日常的工作:目前有一些网友问有关于.NET Core操作SQL Server的问题在本文中解答一下. 本文旨在指出,在 ...

随机推荐

  1. xcopy 复制目录及子目录

    例:将a文件夹内的所有内容(包括子文件夹)复制到b文件夹 xcopy a\* b /y /e /i /q 说明: /y:不弹出“确认是否覆写已存在目标文件”的提示 /e:复制文件及子文件夹内所有内容, ...

  2. PAXOS/RAFT理解

    PAXOS学习记录 前提: 信息准确无篡改,通信环境可信 目的: 解决多结点间一致性问题(集群中一个修改或者申请成为主结点的提议) 主要角色: Proposer :提出议案(同时存在一个或者多个,他们 ...

  3. springMVC学习记录2-使用注解配置

    前面说了一下使用xml配置springmvc,下面再说说注解配置.项目如下: 业务很简单,主页和输入用户名和密码进行登陆的页面. 看一下springmvc的配置文件: <?xml version ...

  4. AutoConfig工具使用

    下载安装Auto工具包: http://code.taobao.org/mvn/repository/com/alibaba/citrus/tool/antx-autoconfig/1.0.9/ant ...

  5. LitJson JavaScriptSerializer

    using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.We ...

  6. php的websocket

    对TCP/IP.UDP.Socket编程这些词你不会很陌生吧?随着网络技术的发展,这些词充斥着我们的耳朵.那么我想问: 1.         什么是TCP/IP.UDP?2.         Sock ...

  7. sdc docker连接

    curl -O https://raw.githubusercontent.com/joyent/sdc-docker/master/tools/sdc-docker-setup.sh &&a ...

  8. 基于JS的文本验证

    1,不能为空 <input type="text" onblur="if(this.value.replace(/^ +| +$/g,'')=='')alert(' ...

  9. ftp使用(图文详解)

    41,准备: FileZilla_Server-v0.9.41.rar 2.安装,可以全部默认下一步 这里装在了E盘 3安装成功添加用户 添加用户名yanan 选择share folders选择要共享 ...

  10. LSTM Accuracy

    Training iter #1: Batch Loss = 1.234543, Accuracy = 0.29866665601730347PERFORMANCE ON TEST SET: Batc ...