原文:memcache的windows下的安装和简单使用

memcache是为了解决网站访问量大,数据库压力倍增的解决方案之一,由于其简单实用,很多站点现在都在使用memcache,但是memcache缺点之一却是缺少安全性验证,所以一般而言我们都会把一些访问量大,但是不需要验证的数据放在这里,需要用的时候来这里取,就给数据库减少了很多的负担。一般而言设定个更新时间就好了,1个小时左右更新一次。

windows下安装和测试memcache最为方便,Linux只是需要相应的编译包就行了,需要包括memcache的程序文件memcached和memcache在php下的扩展模块php_memcache.dll,网上找找很多,有了这两个就可以开始安装过程了。

1. 在终端(也即cmd命令界面)下输入 ‘c:\memcached\memcached.exe -d install’ 安装
2. 再输入: ‘c:\memcached\memcached.exe -d start’ 启动。NOTE: 以后memcached将作为windows的一个服务每次开机时自动启动。这样服务器端已经安装完毕了。
3.下载php_memcache.dll,请自己查找对应的php版本的文件
4. 在C:\winnt\php.ini 加入一行 ‘extension=php_memcache.dll’
5.重新启动Apache,然后查看一下phpinfo,如果有memcache,那么就说明安装成功!

应用方法很简单,在php文件中new一个新的memcache对象,然后调用方法就够行了,memcache的方法不多,常用的就那几个。

首先连接memcache服务器,建立连接:

$mem = new Memcache;
$mem->connect('memcache_host', 11211);

11211是设置的端口,memcache_host这里放连接的ip.

设置数据用set方法:

$mem->set(’key’, ‘This is a test!’, 0, 60);

60是过期时间,单位是秒。

获取数据用get方法:、

$val = $mem->get("mykey");

替换数据用replace方法:

$mem->replace(‘key1′, ‘This is replace value’, 0, 60);

删除数据用delete方法:

$mem->delete(‘key1′);

也可以存放数组:

$arr = array(‘aaa’, ‘bbb’, ‘ccc’, ‘ddd’);
$mem->set(‘key2′, $arr, 0, 60);

一个实际运用的例子:

  1. <?php
  2. $sql = 'SELECT * FROM users';
  3. $key = md5($sql);   //memcached 对象标识符
  4. if ( !($datas = $mc->get($key)) ) {
  5. //  在 memcached 中未获取到缓存数据,则使用数据库查询获取记录集。
  6. echo "n".str_pad('Read datas from MySQL.', 60, '_')."n";
  7. $conn = mysql_connect('localhost', 'test', 'test');
  8. mysql_select_db('test');
  9. $result = mysql_query($sql);
  10. while ($row = mysql_fetch_object($result))
  11. $datas[] = $row;
  12. //  将数据库中获取到的结果集数据保存到 memcached 中,以供下次访问时使用。
  13. $mc->add($key, $datas);
  14. } else {
  15. echo "n".str_pad('Read datas from memcached.', 60, '_')."n";
  16. }
  17. var_dump($datas);
  18. ?>

memcache的windows下的安装和简单使用的更多相关文章

  1. Python:tesserocr 在 windows 下的安装及简单使用

    tesserocr 是 python 的一个 OCR 库,它是对 tesseract 做的一层 Python API 封装,所以他的核心是tesseract. tesseract 的安装见 https ...

  2. windows下redis安装以及简单配置

    1.下载redis 下载地址https://github.com/dmajkic/redis/downloads.有32bit和64bit根据自己需要选择就可以了. 2.安装redis 首先使用cmd ...

  3. Tesseract 在 windows 下的安装及简单应用

    Tesseract 是一个开源的 OCR 引擎,可以识别多种格式的图像文件并将其转换成文本,最初由 HP 公司开发,后来由 Google 维护.下载地址:https://digi.bib.uni-ma ...

  4. Windows下pry安装和配置

    Windows下pry安装和配置 pry是一个增强型的交互式命令行工具,比irb强大. 有自动完成功能,自动缩进,有颜色.有更强大的调试功能. pry 安装很简单. 在终端输入: gem instal ...

  5. 在windows下完美安装GitHub

    笔者最近在Windows下安装GitHub,过程中遇到不少问题.现在把安装的详细步骤分享给大家,免得大家走弯路. 笔者安装了GitHub for Windows程序,一切都运行顺利.但事情没有结束,首 ...

  6. Ruby入门--Linux/Windows下的安装、代码开发及Rails实战

    Ruby入门--Linux/Windows下的安装.代码开发及Rails实战 http://www.linuxidc.com/Linux/2014-04/100242.htm Ubuntu 13.04 ...

  7. mediawiki在windows下的安装

    mediawiki在windows下的安装 对于刚接触wiki的朋友们来说,配置一个服务器环境,安装并运行mediawiki是一件很麻烦的事情,在这里,我尽量用通俗易懂的语言,介绍mw(mediawi ...

  8. windows下Redis安装及利用java操作Redis

    一.windows下Redis安装 1.Redis下载 下载地址:https://github.com/MicrosoftArchive/redis 打开下载地址后,选择版本 然后选择压缩包 下载 R ...

  9. Windows下Python安装numpy+mkl,Scipy和statsmodels

    最近做时间序列分析需要用到Python中的statsmodels,但是安装过程中遇到很头疼的问题,Google.Stackover各种都没有找到合适的解决办法,而且貌似还有很多同学也在吐槽Window ...

随机推荐

  1. 【Oralce】时间操作

    加法 select sysdate,add_months(sysdate,12) from dual;        --加1年 select sysdate,add_months(sysdate,1 ...

  2. BZOJ4699 : 树上的最短路

    这道题主要是要解决以下两个问题: 问题1: 给定一个点$x$,如何取出所有经过它的下水道? 一条下水道经过$x$等价于它起点在$x$的子树里面且终点不在$x$的子树里面,或者两端点的lca就是$x$. ...

  3. BZOJ4356 : Ceoi2014 Wall

    求出左上角到每个需要保护的点左上角的最短路树,那么最优解一定圈住了它们. 然后将每个点拆成四个点,四个点之间如果没跨越最短路树的树边,那就连0权边. 每个需要保护的点四周4个点都不可通行,求出最短路即 ...

  4. 同引擎mysql数据库转导快

    mysql数据库从一个表导入到另外一个表,数据库表引擎类型相同速度会快很多,相反,慢得离奇,5w,相同从myisam到myisam一或两分钟,从myisam到innodb要1到2个小时. [注意:最近 ...

  5. POJO(PO)与javaBean的比较、以及DTO的说明

    一.POJO(Plain Ordinary Java Object)简单的Java对象,其中有一些属性及其getter setter方法的类,没有业务逻辑(重点理解一下"没有业务逻辑&quo ...

  6. Coder-Strike 2014 - Round 1 D. Giving Awards

    题目的意思是 老板给n个人发工资,x欠y的工资,the joy of person x from his brand new money reward will be much less, 老板想避免 ...

  7. 洛谷 P1198 [JSOI2008]最大数 Label:线段树

    题目描述 现在请求你维护一个数列,要求提供以下两种操作: 1. 查询操作. 语法:Q L 功能:查询当前数列中末尾L个数中的最大的数,并输出这个数的值. 限制:L不超过当前数列的长度. 2. 插入操作 ...

  8. [Cocos2D-x For WP8]Tile Map创建地图

    在Cocos2D-x里面创建Tile Map地图是需要用到.tmx的地图文件的,那么创建Tile Map地图文件,我们可以通过地图编辑器来创建,地图编辑器可以在网站:http://www.mapedi ...

  9. js-小效果-手风琴

    <!DOCTYPE html><html><head lang="en"> <meta charset="UTF-8" ...

  10. JAVA泛型? T K V E等代表的意思

    ? 表示不确定的java类型. T  表示java类型. K V 分别代表java键值中的Key Value. E 代表Element. Object跟这些东西代表的java类型有啥区别呢? Obje ...