lnmp-php+memcache实现访问加速

1.memcache是什么,为什么要用它?

Memcached是一款开源、高性能、分布式内存对象缓存系统,可应用各种需要缓存的场景,其主要目的是通过降低对Database的访问来加速web应用程序。许多Web应用都将数据保存到RDBMS中,应用服务器从中读取数据并在浏览器中显示。 但随着数据量的增大、访问的集中,就会出现DB的负担加重、数据库响应恶化、 网站显示延迟等重大影响。

memcache一般的使用目的是,通过缓存数据库查询的结果,减少数据库访问次数,以提高动态Web应用的速度、提高可扩展性。 它是一个基于内存的“键值对”存储,用于存储数据库调用、API调用或页面引用结果的直接数据,如字符串、对象等。

2.CGI与FastCGI

1.FastCGI是什么?

FastCGI是语言无关的、可伸缩架构的CGI开放扩展,其主要 行为是将CGI解释器进程保持在内存中并因此获得较高的性能。众所周知,CGI解释器的反复加载是CGI性能低下的主要原因,如果CGI解释器保持在内存 中并接受FastCGI进程管理器调度,则可以提供良好的性能、伸缩性、Fail-Over特性等

2. FastCGI的工作原理

1、Web Server 启动时载入FastCGI进程管理器(IIS ISAPI或Apache Module);
2、FastCGI进程管理器自身初始化,启动多个CGI解释器进程 (在任务管理器中可见多个php-cgi.exe)并等待来自Web Server的连接。
3、当客户端请求到达Web Server时,FastCGI进程管理器选择并连接到一个CGI解释器。Web server将CGI环境变量和标准输入发送到FastCGI子进程php-cgi.exe。
4、FastCGI子进程完成处理后将标准输出和错误信息从同一连接返回Web Server。当FastCGI子进程关闭连接时,请求便告处理完成。FastCGI子进程接着等待并处理来自FastCGI进程管理器(运行在 WebServer中)的下一个连接。 在正常的CGI模式中,php-cgi.exe在此便退出了。

3.lnmp-php+memcache实现访问加速

解压与编译安装:

lnmp-php+memcache实现访问加速

这里要采用第三方编译:

phpize可以为php建立扩展模块。

lnmp-php+memcache实现访问加速

lnmp-php+memcache实现访问加速

lnmp-php+memcache实现访问加速

lnmp-php+memcache实现访问加速

lnmp-php+memcache实现访问加速

这里生成了一个目录,要记得保留。

lnmp-php+memcache实现访问加速

到该路径下编辑配置文件:

lnmp-php+memcache实现访问加速

lnmp-php+memcache实现访问加速

lnmp-php+memcache实现访问加速

查看:

lnmp-php+memcache实现访问加速

安装memcached :

lnmp-php+memcache实现访问加速

11211表示监听端口,1024表示连接文件数。

lnmp-php+memcache实现访问加速

打开软件,安装telnet.

lnmp-php+memcache实现访问加速

lnmp-php+memcache实现访问加速

拷贝并编辑软件里自带的示例测试文件:

lnmp-php+memcache实现访问加速

lnmp-php+memcache实现访问加速

访问测试:
 

lnmp-php+memcache实现访问加速

lnmp-php+memcache实现访问加速

比较测试:

没有使用memcache 时,用时长,错误多:

lnmp-php+memcache实现访问加速

 

使用memcache 时,用时短,没有错误:

lnmp-php+memcache实现访问加速