20150323--memcache-01

image

memcache的使用:

目录

一、memcache基本的介绍 1

二、基本的原理: 1

三、安装软件 1

四、软件操作 4

1、直接使用telnet远程协议连接,(类似于mysql客户端的黑窗口) 4

2、使用php程序当成客户端,连接memcache要安装memcache的扩展。 7

3php操作memcache. 9

4、入门案例的使用。 11

5、典型的一个案例应用2 12

五、分布式缓存服务器的搭建 12

六、把session数据给添加到memcache里面。 13

七、memcache细节讨论 15

1、缓存周期(有效期) 15

2、惰性删除, 15

3Least Recently UsedLRU 15

4、安全性 15

5memcache比较适合于存储哪些数据。 16

一、memcache基本的介绍

是一个高性能的分布式内存对象缓存系统。

和mysql比较,进行理解memcache

(1)该软件是一个c/s架构,

(2)mysql的数据是存储到哪里的?是存储到磁盘里面的。

memcache的数据是存储到内存里面。

(3)mysql的数据存储是,由数据库,数据表,数据的记录,存储数据是按照表的结构进行存储的。

memcache的数据存储格式是:key/value的格式,来存储的,相当于在内存里面有一张两列的哈希表。类似于php的里面的关联数组

key (键名)       值 

比如我们要存储:

name      小刚

age        12

email      nihao@sohu.com

二、基本的原理:

比如有一个查询系统,查询某个学生的信息:

wpsFC55.tmp

三、安装软件

(1)准备软件,该软件只有一个文件,为了方便管理,把该文件拷贝到和apache或mysql或php同一级目录下面。

wpsFC66.tmp

wpsFC76.tmp

(2)开始安装:

方式一:可以无需安装,进入到该文件所在的目录,直接在cmd下面运行memcahced,直接启动。

wpsFC87.tmp

-p是指定端口号。

方式二:可以把该软件安装 成windows的一个服务,便于 管理。

步骤:

以管理员的方式,打开cmd(命令提示符),进入到 memcached文件所在的目录。

可以使用memcahced.exe –h  查看帮助命令。

wpsFC98.tmp

memcache –d install  开始安装:

wpsFCA8.tmp

安装完成后,要完成启动该服务,

memcached –d start

wpsFCA9.tmp

查看是否启动成功,可以通过计算机管理里面的服务选项查看。

wpsFCBA.tmp

memcache的默认端口号是11211,可以通过查看端口,来判断是否开启该服务,

通过使用netstat –an命令,来查看当前计算机里面监听的服务。

wpsFCDA.tmp

memcached –d stop停止memcache的服务。

(3)在安装时,对应的一些参数设置。

比如设置,缓存的大小。

-p 监听的端口
-l 连接的IP地址, 默认是本机 
-d start 启动memcached服务
-d restart 重起memcached服务
-d stop|shutdown 关闭正在运行的memcached服务
-d install 安装memcached服务
-d uninstall 卸载memcached服务
-u 以的身份运行 (仅在以root运行的时候有效)
-m 最大内存使用,单位MB。默认64MB

-M 内存耗尽时返回错误,而不是删除项
-c 最大同时连接数,默认是1024
-f 块大小增长因子,默认是1.25
-n 最小分配空间,key+value+flags默认是48
-h 显示帮助

-v  输出警告和错误信息。

-vv 打印客户端的请求和返回信息

-i 打印memcached和libevent的版权信息

四、软件操作

1、直接使用telnet远程协议连接,(类似于mysql客户端的黑窗口)

打开cmd进行输入:

telnet ip地址(域名)  端口号   按回车

wpsFCDB.tmp

(1)设置数据,向memcache里面添加数据

添加数据:

语法:

add   键名  0|1(是否压缩) 缓存周期   值的长度   [按回车,进行输入要添加的数据]

0表示不压缩,1表示要压缩

缓存周期:单位是秒,

值的长度:长度的单位和客户端有关,此处是字节。

wpsFCEC.tmp

注意:如果键已经存在,则添加失败。

wpsFCFC.tmp

修改数据:

replace

语法格式和add是一样的。

wpsFCFD.tmp

注意:如果键不存在,则修改失败,只能修改已经 存在的键。

wpsFCFE.tmp

设置数据:

set命令和add的语法是一样的。

如果使用set命令,如果键已经存在,则是完成修改,如果键不存在则是添加操作。

wpsFD10.tmp

(2)获取数据

get 键名

(3)删除数据

delete 键名

wpsFD22.tmp

flush_all  清空所有的数据,

可以设置某一个有效期,

flush_all  秒数,在多少秒之后,清空所有的键。

(4)数据追加

append 在原有值的后面追加数据

wpsFD30.tmp

preappend 在原有值的前面追加数据。

(4)自增和自减

语法:

incr  键名  数字

decr  

秒杀系统,

一分钟开始抢商品,有100件商品,

执行代码:decr number 1该值大于0的则抢到成功,

(5)查看当前状态的一个命令:

通过该stats 命令能够获取,执行了多少次的get查询,有多少次能够使用get查询到数据,有多少次能够使用get查询失败,计算命中率,

计算命中率  get成功查询的次数/get的总的查询次数,通过命中率来判断memcache服务性能。

wpsFD32.tmpwpsFD33.tmpwpsFD43.tmpwpsFD44.tmpwpsFD54.tmp

2、使用php程序当成客户端,连接memcache要安装memcache的扩展。

(1)要准备memcache     php的 扩展,在安装扩展时,要和php的版本一致。

wpsFD65.tmp

(2)把对应的扩展拷贝到哪里?拷贝到php安装目录ext目录里面。

wpsFD76.tmp

(3)打开php.ini文件,要开启该扩展,完成后,要重启apache,

wpsFD86.tmp

(4)测试,是否安装扩展成功,使用phpinfo();函数

wpsFD97.tmp

原文地址:https://www.cnblogs.com/lifushan/p/5471655.html