Memcache缓存(一)

什么是Memcache?

是分布式高速缓存系统;
分布式:可以在多台服务器上同时安装Memcache服务,达到一个很好的集群效果;
高速:Memcache所有的数据都是维护在内存中的;
它的读取速度比我们存储在硬盘中的数据的读取速度快很多;

Memcache有什么用?

当我们的应用访问量特别大的时候,我们数据库的压力也会特别大,Memcache的出现可以在应用和数据库当中增加一个缓冲层;
我们之前已经在数据库读取过的数据,当第二次再访问的时候
我们可以直接访问Memcache去读取这些数据,从而减轻Mysql数据库的压力;

怎样理解Memcache?

Memcache是只有一张表的数据库,这张表有两个字段,分别是主键key和value,value中就是我们保存的数据,key就是这份数据的id,用来保证我们在查找时的唯一性,在脑海中要生成一个简单的模型;

Memcache使用场景

1、非持久化存储:对数据存储要求不高;
也就是说如果这份数据丢失了也不会对我的应用造成太大的影响;
2、分布式存储:不适合单机使用;
Memcache对于内存的消耗很大,Memcache和数据库最好是分两台服务器放置;
3、Memcache是key/value存储:格式简单,不支持List、Array数据格式;

安装说明

我们在Linux系统上安装软件一般有两种方法:
1、编译安装(Libevent Memcache)
我们在安装Memcache的时候是需要先安装Libevent这个扩展,编译安装的好处是你可以在安装的时候进行一些自定义的设置,比如我们可以指定软件安装到哪里;相对而言不太好的地方是,假如你在编译的时候出现了一些错误,而你又对Linux了解不是特别多的情况下,处理错误的时候会比较困难;
2、使用Linux自带依赖管理工具
CentOS的yum或者是Ubuntu的apt-get;

注意:

Memcache有两个版本分别是Memcache和Memcached
推荐使用Memcached,它是Memcache的升级版本,比Memcache有了更多的升级操作并且速度和稳定性上都比Memcache要好很多;

Memcached服务端安装

首先第一步使用依赖管理工具安装Memcached

yum install memcached
//选择y安装完成
Is this ok [y/N]: y

启动Memcached

//-d(守护进程的模式去启动它,当你从终端窗口退出后这个程序依然可以进行)
//-l(IP地址,这里用本机的IP地址127.0.0.1)
//-p(端口号,11211)
//-m(为Memcached分配多少的内存以M为单位,150)
//-u(以哪个用户的身份启动Memcached,这里直接使用超级管理员root身份)
/usr/bin/memcached -d -l 127.0.0.1 -p 11211 -m 150 -u root

查看是否正常启动

ps -ef | grep memcach

客户端的安装

1、安装Libmemcached

下载Libmemcached

wget http://launchpad.Net/libmemcached/1.0/1.0.10/+download/libmemcached-1.0.10.tar.gz

解压Libmemcached

tar zxvf libmemcached-1.0.10.tar.gz

进入到解压包目录

cd libmemcached-1.0.10

配置config到指定目录

./configure --prefix=/usr/lib/libmemcached

make命令编译安装

make && make install

编译安装过程大概需要5分钟左右

2、为PHP安装memcached扩展

下载memcached

wget http://pecl.php.net/get/memcached-2.2.0.tgz

解压memcached

tar zxvf memcached-2.2.0.tgz

进入到解压包目录

cd memcached-2.2.0

Linux下用phpize命令为PHP安装扩展

phpize

再列出文件下所有文件就会多出config配置文件,然后运行该文件

./configure

这个时候提示错误找不到php-config文件


手动帮它指引一下php-cofing文件地址,php-cofing文件地址根据各自安装的目录填写,如果不知道的情况下,在服务器根目录使用查找命令

find -name php-config

手动帮它指引一下php-cofing文件地址

./configure --with-php-config=/usr/local/php/bin/php-config

回车后发现又报了一个错误,找不到我们刚才安装的Libmemcached

这时再告诉它我们刚才安装的Libmemcached的路径

./configure --with-php-config=/usr/local/php/bin/php-config --with-libmemcached-dir=/usr/lib/libmemcached

回车后发现又报错了

说我们不支持sasl这个功能,按照它给的指引运行下面的命令

./configure --with-php-config=/usr/local/php/bin/php-config --with-libmemcached-dir=/usr/lib/libmemcached --disable-memcached-sasl

回车设置成功
然后先make编译一下

make

提示我们已经成功了,最好不要忘了测试一下
这里我们直接编译安装

make install

提示我们扩展已经安装完成并且告诉我们了扩展目录



接下来我们需要在PHP扩展文件中把这个扩展加进来,首先编辑一下php.ini的配置文件,把这个扩展加进去

vim /usr/local/php/etc/php.ini

打开配置文件后直接shift+g跳到文件最后一行,把扩展加上

extension=memcached.so

然后保存退出
更改完php配置文件后要重启服务器

lnmp restart

完成后查看一下php扩展

php -m

然后查看一下有没有memcached这个扩展

php -m | grep memcached

到这一步就说明我们已经为PHP安装好了memcached扩展

接下来我们要看一下我们到底可不可以使用memcached扩展
去连接memcache

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 206,602评论 6 481
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 88,442评论 2 382
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 152,878评论 0 344
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 55,306评论 1 279
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 64,330评论 5 373
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 49,071评论 1 285
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 38,382评论 3 400
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 37,006评论 0 259
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 43,512评论 1 300
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,965评论 2 325
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 38,094评论 1 333
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,732评论 4 323
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 39,283评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,286评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,512评论 1 262
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 45,536评论 2 354
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,828评论 2 345

推荐阅读更多精彩内容

  • 一、MemCache简介 session MemCache是一个自由、源码开放、高性能、分布式的分布式内存对象缓存...
    李伟铭MIng阅读 3,783评论 2 13
  • 1、memcache的概念? Memcache是一个高性能的分布式的内存对象缓存系统,通过在内存里维护一个统一的巨...
    桖辶殇阅读 2,224评论 2 12
  • (一):基础概念 memcache是什么? Memcache 是一个高性能的分布式内存对象缓存系统,用于动态Web...
    楚江云阅读 1,195评论 0 5
  • 基本介绍 memcached是一种缓存技术,他可以把你的数据放入内存,从而通过内存访问提速,因为内存是最快的,me...
    littlexjing阅读 1,472评论 0 1
  • 还是那句老话,只提想法,不论证可行性。 ■ 关于官方专题的审稿 我时常会遇到这样的情况,投《首页投稿》被拒,后来又...
    逸之阅读 827评论 6 6