用法: 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. js中的事件委托和事件代理详解

    起因: 1.这是前端面试的经典题型,要去找工作的小伙伴看看还是有帮助的: 2.其实我一直都没弄明白,写这个一是为了备忘,二是给其他的知其然不知其所以然的小伙伴们以参考: 概述: 那什么叫事件委托呢?它 ...

  2. 移动端click时间、touch事件、tap事件详解

    一.click 和 tap 比较 两者都会在点击时触发,但是在手机WEB端,click会有 200~300 ms,所以请用tap代替click作为点击事件. singleTap和doubleTap 分 ...

  3. 第4章--变量,作用域和内存问题 jquery

    4.1基本类型和引用类型的值 解析器要分析赋给变量的值是基本类型值还是引用类型的值 基本类型:undefined   null   boolean   number    string 引用类型的值: ...

  4. request.getHeader("referer")

    在开发web程序的时候,有时我们需要得到用户是从什么页面连过来的,这就用到了referer. 它是http协议,所以任何能开发web程序的语言都可以实现,比如jsp中是: request.getHea ...

  5. 【bzoj3526】[Poi2014]Card 线段树区间合并

    题目描述 有n张卡片在桌上一字排开,每张卡片上有两个数,第i张卡片上,正面的数为a[i],反面的数为b[i].现在,有m个熊孩子来破坏你的卡片了!第i个熊孩子会交换c[i]和d[i]两个位置上的卡片. ...

  6. LineageOS源码定制手机系统

    LineageOS源码定制手机系统 导语: 现在市场的手机基本就两种:  苹果机和android机. 今天我们不谈苹果机, 对小编我来讲,那是个奢侈品, android是我的最爱.对于一般androi ...

  7. 解决 Could not load hsdis-amd64.dll

    win10下想查看JIT编译的汇编源码 结果提示: Could not load hsdis-amd64.dll; library not loadable; PrintAssembly is dis ...

  8. 【python接口自动化】httpUtils

    # coding=utf8 import requests from common.logger import Logger import logging class httpUtils: logge ...

  9. ace模板dataTables_length控制是否显示分页

    默认的ace中配置的是7列之后才显示分页的,其实是可控的,如下: aoColumns这个参数的含义: 排序控制 $(document).ready(function() {$('#example'). ...

  10. net5:Theme主题样式的动态变换,在内容页content中操作影响模板页的操作

    原文发布时间为:2008-07-29 -- 来源于本人的百度文章 [由搬家工具导入] using System;using System.Data;using System.Configuration ...