Memcache 服务器端 + PHP MEMCACHE扩展 + PHP MEMCACHED扩展 + MemAdmin管理监控工具

来源:互联网 发布:淘宝商城如何申请 编辑:程序博客网 时间:2024/06/06 03:21

1、安装文件准备

A、Memcache的服务器端程序:

下载地址:http://code.jellycan.com/memcached/

B、Memcache的安装先决条件:先安装libevent

Libevent介绍:libevent是一个事件触发的网络库,适用于windows、linux、bsd等多种平台,内部使用select、epoll、kqueue等系统调用管理事件机制。著名的用于apache的php缓存库memcached据说也是libevent based,而且libevent在使用上可以做到跨平台,而且根据libevent官方网站上公布的数据统计,似乎也有着非凡的性能。

下载地址:http://libevent.org/

2、操作系统

A、编译器要求

Memcache的安装文件是要求安装gcc编译器的。否则我们的libevent和memcache都无法安装。

检查是否有gcc编译器的命令:gcc –v

如果系统的gcc编译器可以用,将会有一段描述,否则提示找不到类库。

成功的例如:

3、安装

先安装libevent,然后安装memcache

A、libevent安装

[root@localhost]#tar -zxvf libevent-2.0.18-stable.tar.gz

切换到libevent的目录中

root@localhost]#cd  libevent-2.0.18-stable

指定安装路径到/usr/目录下
[root@localhost]#./configure --prefix=/usr/local/services/libevent

//编译

[root@localhost]#make

//安装

[root@localhost]#.make install

B、memcache服务器安装

//先解压缩memcached-1.4.13.tar.gz

[root@localhost]# tar -zxvf  memcached-1.4.13.tar.gz

//切换到memcache的目录中

[root@localhost]# cd memcached-1.4.13

//指定安装路径到/usr/local/services/memcached目录下,同时指定libevent的安装位置

[root@localhost]# ./configure --prefix=/usr/local/services/memcached --with-libevent=/usr/local/services/libevent/

//编译

[root@localhost]# make

//安装

[root@localhost]# make install

C、测试是否安装成功:

测试libevent:

[root@localhost]# ls /usr/local/services/libevent/lib/|grep libevent

 

[root@localhost]# ls -al /usr/local/services/memcached/bin

 

4、  启动memcache

A、启动Memcache的服务器端:

[root@localhost]# /usr/local/services/memcached/bin/memcached -d -m 100 -u root -l 192.168.3.107 -p 11211 -c 256 -P /tmp/memcached.pid

-d 选项是启动一个守护进程-m是分配给Memcache使用的内存数量,单位是MB,我这里是100MB
-u 是运行Memcache的用户,我这里是root
-l 是监听的服务器IP地址,如果有多个地址的话,这里指定了服务器的IP地址192.168.3.107
-p 是设置Memcache监听的端口,这里设置了11211,最好是1024以上的端口,这里使用默认端口11211
-c 选项是最大运行的并发连接数,默认是1024,这里设置了256,按照你服务器的负载量来设定
-P 是设置保存Memcache的pid文件,这里是保存在/tmp/memcached.pid

B、如果要结束Memcache进程,执行:注意内容(`)符号

[root@localhost]# kill `cat /tmp/memcached.pid`

5、  监测是否启动成功方式

使用telnet来对我们的memcache服务器进行访问

telnet 192.168.3.107 11211

连接上后,直接敲击stats命令看当前缓存服务器状态

6、YUM安装Apache

[root@localhost]# yum install httpd httpd-devel
安装完成后,启动apache

[root@localhost]# /etc/init.d/httpd start

设为开机启动

[root@localhost]# chkconfig httpd on 

7、YUM安装PHP

[root@localhost]# yum install php php-mysql php-common php-gd php-mbstring php-mcrypt php-devel php-xml
启动服务

[root@localhost]# /etc/init.d/httpd start

8、安装PHP的MEMCACHE扩展

A、下载http://pecl.php.net/package/memcache

# tar -zxvf memcache-3.0.6.tgz
# cd memcache-3.0.6
# /usr/bin/phpize 

# ./configure --enable-memcache

# make
# make install
显示完成:Installing shared extensions:     /usr/lib64/php/modules/

B、查看目录/usr/lib64/php/modules/

C、编辑php.ini加入扩展文件

[root@localhost]# vim /etc/php.ini

D、重启Apache

[root@localhost]# service httpd restart

E、注意:若是源码代包安装PHP,需指路径

1、# /usr/local/services/php/bin/phpize

2、# ./configure --enable-memcache --with-php-config=/usr/local/services/php/bin/php-config --with-zlib-dir

3、#make && make install之后得到结果

3、# vim /usr/local/services/php/lib/php.ini

加入模块路径

extension_dir="/usr/local/services/php/lib/php/extensions"
extension=memcache.so

9、安装PHP的MEMCACHED扩展

A、下载https://launchpad.net/libmemcached/+download libmemcached-1.0.4.tar.tar(注意:版本1.0.7会报找不到event.h的错误)

B、下载http://pecl.php.net/package/memcached memcached-2.0.1.tgz

C、安装libmemcached

# tar -zxvf libmemcached-1.0.4.tar.tar

# cd libmemcached-1.0.4

# mkdir /usr/local/services/libmemcached

# ./configure --prefix=/usr/local/services/libmemcached/

# make

# make install

D、安装memcached

# cd memcached-2.0.1

# /usr/bin/phpize

# ./configure --with-libmemcached-dir=/usr/local/services/libmemcached/

# make

# make install

生成memcached.so文件

E、编辑php.ini加入扩展文件

# vim /etc/php.ini

F、查看PHPINFO扩展

 

G、注意:若是源码代包安装PHP,需指路径

# tar -zxvf memcached-2.0.1.tgz

# cd memcached-2.0.1/

# /usr/local/services/php/bin/phpize

# ./configure --enable-memcached --with-php-config=/usr/local/services/php/bin/php-config --with-libmemcached-dir=/usr/local/services/libmemcached/

# make

# make install

然后把生成的模块添加的PHP,见(8、安装PHP的MEMCACHE扩展,E点)

10、下载MemAdmin 

A、基于 PHP5 & JQuery 的 Memcached 管理监控工具

下载http://www.junopen.com/memadmin/

B、解压到Apache访问目录

/var/www/html/

问题:SELinux 导致 PHP 无法使用 fsockopen 连接到 Memcached 服务器

执行

# setsebool -P httpd_can_network_relay=1

检查是否成功

# /usr/sbin/getsebool httpd_can_network_relay

httpd_can_network_relay –> on


# sudo tail /var/log/messages

May  2 15:10:55 Fedora-jin setsebool: The httpd_can_network_relay policy boolean was changed to 1 by root

原创粉丝点击