环境:

一台Nginx服务器:Redhat  Enterprise Linux 5.4  做反向代理服务器

两台LAMP服务器:Redhat  Enterprise Linux 5.4  提供服务的后方服务器

软件包:

nginx-1.0.11.tar.gz      healthcheck_nginx_upstreams-master.zip(Nginx的补丁)

      memcached-1.4.13.tar.gz(服务端)  

memcache-2.2.5.tgz(客户端)

LAMP使用的rpm包进行安装的。

试验目的:因为Nginx的连接并发量比较大,但是运行起来不稳定。而apache连接并发量少,但是运行很稳定。这样结合这两个服务的有点加上缓存来提高服务质量。在Nginx服务器上使用的本地磁盘缓存,在后方LAMP上使用的memcache缓存。memcache是基于内存的缓存,所以访问时速度较快。upstream是为了提供负载均衡的,前端服务器将请求按照设置的权重分发个后方服务器。healthchecke是用来监测后方服务器的运行状况,及时做出应急,将请求实现智能转发。

试验拓扑:

一、安装Nginx

因为后面要用到健康监测,所以要给Nginx打补丁。

然后执行make && make install进行安装。安装完成之后,可以编写Nginx的一些控制脚本和添加Nginx的bin,lib,include等一些文件到系统中。

二、设置Nginx本地缓存。

本地缓存的目录需要自己手动创建,要保证nginx用户对它们有可读可执行的权限。

三、Nginx的负载均衡。

四、Nginx的健康监测。

以上的步骤是前方代理服务器的主要配置。注意:以上在操作时,多次修改nginx的配置文件,所以每次修改完配置文件后,需要重启ngin服务。

接下来就是后方服务器的搭建以及配置了,因为后方服务器的实现是一样的,所以只在一方上做说明。使用rpm包搭建LAMP环境。

五、搭建LAMP

为了减少出错,可以在搭建完成LAMP之后,测试apache和mysql以及php之间的结合。

六、安装memcached。

   memcached服务是和mysql相结合的,用来保存从数据库中查询的数据,快速响应前端服务器的请求。使用源码安装memcached之前需要安装libevent。

七、安装memcache客户端

     memcache客户端是和php相结合的,因为php需要访问mysql,php借助于memcache客户端来向memcached服务端发送请求。因为后方的php和mysql都在一起,所以就安装在同一个服务器中。