在上一篇博客中我写到了memcache的安装和管理,在这一篇博客中我将写到的是在php中如何使用memcache。
一、安装memcache扩展
首先我们通过phpinfo()函数查看一下我们当前的php环境是否支持memcache扩展,在服务器的根目录下新建一个文件info.php,在文件中写入
1 2 |
|
然后在浏览器中输入 http://localhost/info.php 访问,然后查找是否有memcache扩展,一般我们的服务器默认是没有安装memcache扩展的,所以还是得我们自己来安装。我们先到网上下载php_memcache.dll文件,把文件拷贝到php扩展目录下(我的是php5/ext/),在扩展目录下加上这个文件还没完成,我们要在php的配置文件php.ini文件中加入extension=php_memcache.dll,php环境会自动找到php扩展目录将这个扩展加到php环境中,这个时候我们再重启apache,然后再来访问 http://localhost/info.php ,就可以看到
这就说明我们的memcache扩展安装好了!我们再查看php手册,发现memcache扩展的使用有两种方式,第一种是面向过程的使用方式,还有一种是面向对象的使用方式,而我们一般常用的是面向对象的方式。
二、memcache的使用实例
直接贴代码了!
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 |
|
三、php在什么地方使用memcache
a、数据库中读出来的数据(select) 使用memcache处理
通常情况下我们访问一次页面php就会连接一次数据库,就会到数据库中读取数据,如果访问量大的时候数据库就无法承受压力了,我们使用memcache的话,只要页面第一次被访问php就会把数据存到memcache服务器中,并且设定一个过期时间,这样在过期时间之前都不需要去数据库读取数据,这个可以大大提成网站性能(我们memcache的数据是存在内存中的,所以读取起来非常快)。下面我就贴出在数据库中使用memcache的示例代码:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 |
|
四、memcache的安全(不让别人访问)
1、内网连接
2、设置防火墙
iptables -A INPUT -p tcp -dport 11211 -j DROP 来拒绝全部的访问,
再设置可以访问的IP
iptables -A INPUT -p tcp -s 192.168.1.111 -dport 11211 -j ACCEPT
iptables -A INPUT -p udp -s 192.168.1.111 -dpost 11211 -j ACCEPT
在php中使用Memcache,布布扣,bubuko.com