用法: nginx响应请求时,直接请求memcached,

如果没有相应的内容,再回调PHP页面,去查询database,并写入memcached.

分析: memcached是k/v存储, key-->value,

nginx请求memecached时,用什么做key?

一般用 uri arg 做key,  如 /abc.php?id=3

配置memcache集群

进入php配置文件,搜索一下memcached,看看是否引入了memcached,如果没有,需要安装php的memcached扩展。

发现没有安装,那么下面我们就需要在已经编译好php的情况下,安装memcached扩展

1. 因为我们以前编译过memcached,虽然make clean了,如果怕还是有影响,可以把memcached删除,再重新解压一下。

2.我们在编译memcached之前,要执行一下./configure命令,但是这里没有该命令,我们需要先执行phpize,之后就有./configure

注:http://www.jb51.net/article/37741.htm 这是一个关于phpize命令的详解

3.我们这里只需要配置一下php目录的选项就可以

4.

make && make install 之后,出现如下一句话,告诉你这个扩展在什么位置

5.进入到php配置文件,添加如下一句,来把memcached引入进来

6.杀php进程,并重启

7.在浏览器输入,test.php是自带的,里面有个函数,可以打php的相关信息,我们从这里可以看到php的基本信息,可以看到是有memcached扩展的。

在nginx的配置文件中做如下修改:

location / {

#设置memcached的key是什么

set $memcached_key “$uri”;

#设置memcached的ip和端口,让nginx好知道去哪里找memcached

memcached_pass 127.0.0.1:11211;

#如果我们在memcached中没有找到key,那么我们去调用那个php程序

error_page 404 /claaback.ph;

}

upstream 实现集群memcached

upstream memserver {  把用到的memcached节点,声明在一个组里

hash_key $request_uri;  // hash计算时的依据,以uri做依据来hash

server localhost:11211;

server localhost:11212;

}

Location里

location / {

# root   html;

set $memcached_key $uri;

memcached_pass memserver;  // memserver为上面的memcache节点的名称

error_page 404 /writemem.php;

index  index.php index.html index.htm;

}

回调程序callback.php。连接数据库,取客户端需求的值,如果取到了,set进memcached,如果没取到,说没取到。

在地址栏输入192.168.1.200/user13.html

上面的例子是使用了一台memcached,如果使用的是多台memcached,也就是memcached集群,该如何?会出现如下的问题

4.php整合Memcached的更多相关文章

  1. spring中整合memcached,以及创建memcache的put和get方法

    spring中整合memcached,以及创建memcache的put和get方法: 1:在项目中导入memcache相关的jar包 2:memcache在spring.xml的配置: 代码: < ...

  2. spring 5.x 系列第12篇 —— 整合memcached (代码配置方式)

    文章目录 一.说明 1.1 XMemcached客户端说明 1.2 项目结构说明 1.3 依赖说明 二.spring 整合 memcached 2.1 单机配置 2.2 集群配置 2.3 存储基本类型 ...

  3. spring 5.x 系列第11篇 —— 整合memcached (xml配置方式)

    文章目录 一.说明 1.1 XMemcached客户端说明 1.2 项目结构说明 1.3 依赖说明 二.spring 整合 memcached 2.1 单机配置 2.2 集群配置 2.3 存储基本类型 ...

  4. springMVC整合memcached

    非原创,文章转自:http://www.cnblogs.com/xiaoqingxin/p/4132391.html 文章我就不全copy了,摘抄下我关注的部分,想看原文的请移步上面文章链接 appl ...

  5. springMVC整合memcached,以注解形式使用

    睡不着,深夜写点博客.闲下来有一个月了,心里多少有点…… 在北京找工作一再受阻,这个时间点也不好找 再接再厉 之前没有用过memcached,没有什么实战经验,看了一些关于memcached的博客,写 ...

  6. Memcached的安装和使用以及nginx整合memcached

    一.模块的安装启动 wget http://cdnetworks-kr-2.d1.sourceforge.net/project/levent/libevent/libevent-2.0/libeve ...

  7. SpringBoot(十):SpringBoot整合Memcached

    一.环境准备memcached 1.4.5SpringBoot 1.5.10.RELEASEjava_memcached-release_2.6.6.jarmemcached 1.4.5 window ...

  8. Memcached在Linux环境下的使用详解http://blog.51cto.com/soysauce93/1737161

    大纲 一.什么是memcached 二.memcached特性 三.memcached存储方式 四.memcached安装与配置 五.memcached结合php 六.Nginx整合memcached ...

  9. 一篇文章让你了解并掌握memcached

    第一章 memcached简介 1.1为什么引入memcached 随着数据量的增大,访问的集中,REBMS负担加重,数据库响应恶化. Memcached是高性能的分布式内存缓存服务器,目的是通过缓存 ...

随机推荐

  1. Timer和TimerTask详解

    1.概览 Timer是一种定时器工具,用来在一个后台线程计划执行指定任务.它可以计划执行一个任务一次或反复多次.TimerTask一个抽象类,它的子类代表一个可以被Timer计划的任务. 简单的一个例 ...

  2. 测试openssl_encrypt

    <?php //$string = 'It works ? Or not it works ?'; //$pass = '1234'; //$method = 'aes128'; // // / ...

  3. iOS开发,最新判断是否是手机号的正则表达式

    最近项目里需要判断是否为手机号并发送验证码的功能,一下是实现方法.不过这个方法还是有些不足,只能判断输入的11位数的号段是否正确,无法判断手机号是否存在.不过勉强可以使用! + (NSString * ...

  4. 【Luogu】P3174毛毛虫(树形DP)

    题目链接 树形DP水题,设f[x][0]是以x为根的子树,内部只有半条链(就是链的两个端点一个在子树里,一个不在子树里)的最大值,f[x][1]是以x为根的子树,内部有一条完整的链(选两个内部的子树作 ...

  5. 面向对象oop思想

    OOP核心思想:封装,继承,多态. 理解: 对象是由数据和容许的操作组成的封装体,与客观实体有直接对应关系,一个对象类定义了具有相似性质的一组对象.而每继承性是对具有层次关系的类的属性和操作进行共享的 ...

  6. python - opencv 的一些小技巧备忘

    python - opencv 的一些小技巧备忘 使用python-opencv来处理图像时,可以像matlab一样,将一幅图像看成一个矩阵,进行矢量操作,以加快代码运行速度. 下面记录几个常用的操作 ...

  7. 谈谈自己对REST、SOA、SOAP、RPC、ICE、ESB、BPM知识汇总及理解(转载)

    相关参考文章: 谈谈自己对REST.SOA.SOAP.RPC.ICE.ESB.BPM知识汇总及理解 微服务SOA架构与RPC远程过程调用 SOA和微服务架构的区别 SOA: 维基百科解释:SOA:面向 ...

  8. 一款手机端的日历插件ICalendar.js

    我的网盘:http://pan.baidu.com/s/1jIib2Ay

  9. 二、 java中的变量与数据类型及类型转换

    标识符:凡是可以自己命名的地方都叫标识符,如:类名.方法名.接口名... 1.标识符命名的规则: 由26个英文字母大小写,0-9,_或$组成,不遵守会报错. 不可以用数字开头. 不能使用关键字和保留字 ...

  10. POJ 1011:木棒

    传送门 http://poj.org/problem?id=1011 题目大意 已知原来有等长若干木棒,现在给你一堆断了的木棒的长度,问原来的木棒最短是多长 题目类型 DFS + 剪枝 + “贪心优化 ...