服务器之家:专注于服务器技术及软件下载分享
分类导航

Linux|Centos|Ubuntu|系统进程|Fedora|注册表|Bios|Solaris|Windows7|Windows10|Windows11|windows server|

服务器之家 - 服务器系统 - Linux - LAMP服务器性能优化技巧之加速PHP

LAMP服务器性能优化技巧之加速PHP

2021-04-12 01:31Linux教程网 Linux

目前LAMP (Linux + Apache + MySQL + PHP) 近几年来发展迅速,已经成为Web 服务器的事实标准。本文我们将介绍基于LAMP组合的服务器的性能优化技巧:加速PHP。

apache服务器优化、php优化、mysql优化

1.使用eaccelerator

我们上面的介绍apache服务器的优化,如果您曾经浏览过 php 的网页时,或许会发现:怎么 php 的速度慢慢的,这是怎么一回事啊?php 不是号称速度上面的反应是很快速的吗?怎么会慢慢的呢?这是由于 php 的程序代码去调用了太多的函式库,而这些函式库每次调用都需要由硬盘读出来,有没有办法提升 php 的执行速度啊。如果我们可以将这些在硬盘里面的函式库先读到高速缓存中( cache ),由于内存的速度可比硬盘快多了。如此一来的话,当然可以提升不少速度。

2、软件下载安装:

wget http://internap.dl.sourceforge.net/sourceforge/eaccelerator/eaccelerator-0.9.3.tar.bz2

tar jxf eaccelerator-0.9.3.tar.bz2

/usr/local/bin/phpize   ./configure --enable-eaccelerator=shared --with-php-config=/usr/local/bin/php-config   make;make install   

修改/etc/php.ini文件,加入以下内容:

extension="/path/to/eaccelerator.so"  eaccelerator.shm_size="16"  eaccelerator.cache_dir="/tmp/eaccelerator"  eaccelerator.enable="1"  eaccelerator.optimizer="1"  eaccelerator.check_mtime="1"  eaccelerator.debug="0"  eaccelerator.filter=""  eaccelerator.shm_max="0"  eaccelerator.shm_ttl="0"  eaccelerator.shm_prune_period="0"  eaccelerator.shm_only="0"  eaccelerator.compress="1"  eaccelerator.compress_level="9"  

然后建立快存取数据目录:

mkdir /tmp/eaccelerator   chmod 0777 /tmp/eaccelerator   

从新启动apache服务器:

/etc/rc.d/init.d/httpd restart   

通过lynx浏览器打开web页面查看通过phpinfo()已经可以看到图7,就表示安装成功。

 

 

 

 

LAMP服务器性能优化技巧之加速PHP

 

图7 eaccelerator启用

从图中可以看到:eaccelerator启用了。下面 使用ab命令:apache http 服务器性能测试工具,是一个测试你apache http服务器的工具,你可以通过这个工具指定一个单位时间内向apache发出的请求数量来看看你的apache和机器配合的性能如何。命令如下:

/home/apache/bin/ab -c 20 -n100 –w http://localhost/phpinfo >1.html   

-c: 同时向服务器端发送的请求数目,默认状态下是一次只执行一个http请求。

-n: 执行一次测试会话的时候所发出的请求数目。

-w:打印输出结果到html表中,默认的表是两列n行白底黑框 。

apachebench)的测试数据的 requests per second (以下简称 rps)一项是指每秒服务器返回的页面数,经过比较使用了 eaccelerator 后网页速度明显加快了。图8 lynx浏览器的 html格式测试结果。

 

 

 

 

LAMP服务器性能优化技巧之加速PHP

 

图8 html格式测试结果

3.使用zend optimizer

zend optimizer用优化代码的方法来提高php 4.0应用程序的执行速度。实现的原理是对那些在被最终执行之前由运行编译器(run-time compiler)产生的代码进行优化。一般情况下,执行使用zend optimizer的php程序比不使用的要快40%到100%。这意味着网站的访问者可以更快的浏览网页,从而完成更多的事务,创造更好的客户满意度。更快的反应同时也意味着可以节省硬件投资,并增强网站所提供的服务。所以,使用zend optimizer,就等于提高了电子商务的盈利能力。zend optimizer能给php用户带来很多益处,特别是那些运营网站的人。快速运行php程序可以显著降低服务器的cpu负载,并可以减少一半的反应时间,也就是从访问者点击链接到服务器开始读取页面之间的时间。

zend optimizer安装是傻瓜化的,安装向导会自动根据你的选择来修改php.ini帮助你启动这个引擎。

软件下载安装:

wget http://downloads.zend.com/optimizer/3.0.0/zendoptimizer-3.0.0-linux-glibc21-i386.tar.gz

gunzip zendoptimizer-3.0.0-linux-glibc21-i386.tar.gz

tar vxf zendoptimizer-3.0.0-linux-glibc21-i386.tar

cd zendoptimizer-3.0.0-linux-glibc21-i386

./install   

LAMP服务器性能优化技巧之加速PHP

 

图 9 zend optimizer安装向导

从新启动apache服务器:

/etc/rc.d/init.d/httpd restart   

打开web页面查看通过phpinfo()已经可以看到图,就表示zend optimizer安装成功。

 

 

 

LAMP服务器性能优化技巧之加速PHP

 

图 10 zend optimizer安装成功

然后可以使用ab命令进行再次测试。也可以使用siege(http://www.joedog.org/siege/ )进行测试,它是一个压力测试和评测工具,设计用于web开发这评估应用在压力下的承受能力:可以根据配置对一个web站点进行多用户的并发访问,记录每个用户所有请求过程的相应时间,并在一定数量的并发访问下重复进行。

延伸 · 阅读

精彩推荐
  • LinuxLinux中环境变量配置的步骤详解

    Linux中环境变量配置的步骤详解

    Linux中环境变量包括系统级和用户级,系统级的环境变量是每个登录到系统的用户都要读取的系统变量,而用户级的环境变量则是该用户使用系统时加载的...

    Myths7882022-02-10
  • Linux详解Linux系统下PXE服务器的部署过程

    详解Linux系统下PXE服务器的部署过程

    这篇文章主要介绍了Linux系统下PXE服务器的部署过程,包括对PXE的API架构作了一个基本的简介,需要的朋友可以参考下...

    运维之道9812019-07-04
  • LinuxLinux lnmp下无法使用mail发邮件的两种解决方法

    Linux lnmp下无法使用mail发邮件的两种解决方法

    在配置了lnmp环境后,出现了mail函数不能发送邮件的问题,其实有两种方法,一是使用sendmail组件,而是使用postfix。下面为大家一一介绍下 ...

    Linux之家4042019-09-17
  • LinuxLinux上设置用户通过SFTP访问目录的权限的方法

    Linux上设置用户通过SFTP访问目录的权限的方法

    这篇文章主要介绍了Linux上设置用户通过SFTP访问目录的权限的方法,SFTP可以理解为使用SSH协议进行FTP传输的协议,因而同时要对OpenSSH进行相关设置,需要的朋...

    OSChina10022019-06-19
  • LinuxLinux常用的日志文件和常用命令

    Linux常用的日志文件和常用命令

    成功地管理任何系统的关键之一,是要知道系统中正在发生什么事。 Linux 中提供了异常日志,并且日志的细节是可配置的。Linux 日志都以明文形式存储,所...

    Linux教程网2632020-04-18
  • Linux确保Linux系统安全的前提条件 漏洞防护

    确保Linux系统安全的前提条件 漏洞防护

    Linux 作为开放式的操作系统受到很多程序员的喜爱,很多高级程序员都喜欢编写Linux操作系统的相关软件。这使得Linux操作系统有着丰富的软件支持,还有无...

    Linux之家2642020-04-11
  • Linux手把手教您在 Linux 上使用 GPG 加解密文件

    手把手教您在 Linux 上使用 GPG 加解密文件

    在本教程中,我将告诉你如何用 GPG 加密和解密文件。这是一个简单的教程,你可以在你的 Linux 系统上尝试所有的练习。这将帮助你练习 GPG 命令,并在你...

    Linux中国6962021-12-15
  • Linuxlinux中rmdir命令使用详解(删除空目录)

    linux中rmdir命令使用详解(删除空目录)

    今天学习一下linux中命令: rmdir命令。rmdir是常用的命令,该命令的功能是删除空目录,一个目录被删除之前必须是空的 ...

    linux命令大全5372019-11-19