LAMP和LNMP加速与缓存优化

LAMP和LNMP的优化,两者php的优化差不多:

apache+php(libphp5.so)

nginx+php(fcgi php-fpm)

优化都是对应一个主配置文件php.ini

nginx php(fcgi php-fpm)有一个自己的配置文件php-fpm.conf

php web引擎缓存加速优化实战

php慢的瓶颈点有两点:1、解析需要时间 2、需要找后面mysql要,需要时间。

1.操作码缓存。。。将php引擎解析数据请求编译后的数据缓存起来。

php在高版本后可直接编译时加上异地mysql参数,然后php配置文件里指路径即可:

--with-mysql=mysqlnd \本地就不需要安装mysql软件包了。

DNS直接修改/etc/resolv.conf这个文件是没用的,只是暂时的,重启之后就会恢复原样,网络服务重启以后会根据/etc/sysconfig/network-scripts/ifcfg-eth0来重载配置,如果ifcfg-eth0没有配置DNS,那么resolv.conf会被冲掉,重新变成空值。

查看mysql编译参数:

[[email protected] ~]# grep CONFIGURE_LINE /application/mysql/bin/mysqlbug

CONFIGURE_LINE="./configure  ‘--prefix=/application/mysql5.1.72‘ ‘--with-unix-socket-path=/application/mysql5.1.72/tmp/mysql.sock‘ ‘--localstatedir=/application/mysql5.1.72/data‘ ‘--enable-thread-safe-client‘ ‘--with-mysqld-user=mysql‘ ‘--with-big-tables‘ ‘--without-debug‘ ‘--without-pthread‘ ‘--enable-assembler‘ ‘--with-extra-charsets=complex‘ ‘--with-readline‘ ‘--with-ssl‘ ‘--with-embedded-server‘ ‘--enable-local-infile‘ ‘--with-plugins=partition,innobase‘ ‘--with-mysqld-ldflags=-all-static‘ ‘--with-client-ldflags=-all-static‘"

`test -n "$CONFIGURE_LINE"  && echo "Configure command: $CONFIGURE_LINE"`

查看apache编译参数:/application/apache/bin/apachectl -V

查看php编译参数:

/application/php/bin/php -i|grep configure

Configure Command =>  ‘./configure‘  ‘--prefix=/application/php5.3.27‘ ‘--with-apxs2=/application/apache/bin/apxs‘ ‘--with-mysql=/application/mysql‘ ‘--with-xmlrpc‘ ‘--with-openssl‘ ‘--with-zlib‘ ‘--with-freetype-dir‘ ‘--with-gd‘ ‘--with-jpeg-dir‘ ‘--with-png-dir‘ ‘--with-iconv=/usr/local/libiconv‘ ‘--enable-short-tags‘ ‘--enable-sockets‘ ‘--enable-zend-multibyte‘ ‘--enable-soap‘ ‘--enable-mbstring‘ ‘--enable-static‘ ‘--enable-gd-native-ttf‘ ‘--with-curl‘ ‘--with-xsl‘ ‘--enable-ftp‘ ‘--with-libxml-dir‘

PHP Warning:  Unknown: It is not safe to rely on the system‘s timezone settings. You are *required* to use the date.timezone setting or the date_default_timezone_set() function. In case you used any of those methods and you are still getting this warning, you most likely misspelled the timezone identifier. We selected ‘Asia/Chongqing‘ for ‘CST/8.0/no DST‘ instead in Unknown on line 0

字符集会影响正则表达式的匹配:

echo ‘export LC_ALL-C’>>/etc/profile

source /etc/profile

由于php加速器大多是perl语言写的,所以要安装以下内容:

yum install perl-CPAN -y

yum install perl-devel -y

eaccelerator:优点,PHP加速、优化、和动态内容缓存的扩展模块,缺点,快倒闭,开发不活跃了。可提高php效率10倍。

XCache:跟eaccelerator一样,安装时2选1,效率比eaccelerator高,开发更活跃。

上传nginx-php-ext-soft.zip到服务器,然后unzip解压。upzip -o是覆盖解压,脚本时可利用上,但要注意非常危险,直接覆盖不提示。

tar jxf eaccelerator-0.9.6.tar.bz2

cd eaccelerator-0.9.6

/application/php/bin/phpize 在php里安装第三方程序都要执行此条命令,扩展php模块的,所有插件都要执行它。

./configure --enable-eaccelerator=shared --with-php-config=/application/php/bin/php-config

make&&make install

编译完后查看:

[[email protected] nginx-php-ext-soft]# ls /application/php5.3.27/lib/php/extensions/no-debug-zts-20090626/

eaccelerator.so   ----代表编译成功

安装xchache:

/application/php/bin/phpize

解压软件进入目录

./configure --enable-xcache --with-php-config=/application/php/bin/php-config

make&&make install

最后查看安装上了没:

[[email protected] xcache-1.3.2]# ls /application/php5.3.27/lib/php/extensions/no-debug-non-zts-20090626/ 这个路径跟apache里的不一样,注意。

PHP缓存加速器软件种类

xcache,eaccelerator,Zend(只支持php5.2,开发慢),apc

如何选择:

建议xcache,eaccelerator,二选一,首选xcache,更快开发更活跃。

Memcache分为服务端软件和客户端插件两部分:

服务端软件的名字为:memcached-1.4.3.tar.gz

客户端软件的名字为:memcache-2.2.5.tgz,本文就是客户端插件在php服务中的安装。

tar xf  memcache-2.2.5.tgz

cd memcache-2.2.5

/application/php/bin/phpize

./configure  --with-php-config=/application/php/bin/php-config

make&&make install

安装PDO_MYSQL它是数据库的一个辅助工具,非必选。

tar PDO_MYSQL-1.0.2.tgz

[[email protected] nginx-php-ext-soft]# tar xf PDO_MYSQL-1.0.2.tgz

[[email protected] nginx-php-ext-soft]# cd PDO_MYSQL-1.0.2

/application/php/bin/phpize

./configure  --with-php-config=/application/php/bin/php-config --with-pdo-mysql=/application/mysql&&

make&&make install

ls /application/php5.3.27/lib/php/extensions/no-debug-non-zts-20090626/

ImageMagick图像处理软件,可将大图处理成缩略图,它不是扩展包,不用/application/php/bin/phpize来处理。

tar xf ImageMagick.tar.gz

cd ImageMagick-6.5.1-2/

./configure &&

make&&make install

再安装imagick-2.3.0.tgz,只有将上面的ImageMagick装了后才能装它,它们有先后顺序的。因为imagick-2.3.0.tgz需要调用到上面的ImageMagick。

tar xf imagick-2.3.0.tgz

cd imagick-2.3.0

/application/php/bin/phpize

./configure  --with-php-config=/application/php/bin/php-config &&

make&&make install

时间: 2024-10-14 21:50:45

LAMP和LNMP加速与缓存优化的相关文章

LAMP与LNMP加速与缓存优化(二)

开始配置软件,具体软件安装,可以看 LAMP与LNMP加速与缓存优化(一) vi     /application/php/lib/php.ini lamp extension_dir = "/application/php5.3.27/lib/php/extensions/no-debug-zts-20090626/" extension = memcache.so                                                            

LAMP与LNMP加速与缓存优化(一)1

php web引擎缓存加速优化 lamp基础  web环境准备 centos 6.5_64   Apache/2.2.27 (Unix)  mysql5.1.72   php5.3.27 /application/apache/bin/apachectl -V Server version: Apache/2.2.27 (Unix) cat /application/apache/build/config.nice  查看编译的参数 grep  CONFIGURE  /application/m

LAMP与LNMP加速与缓存优化(一)2

主要是安装软件 memcache 数据库缓存扩展模块 分为 服务器端  memcached  客户端插件memcache http://pan.baidu.com/s/1qYDwiDI   软件可到这里面下载 tar xf memcache-2.2.5.tgz cd memcache-2.2.5 /application/php/bin/phpize ./configure   --with-php-config=/application/php/bin/php-config make &&

四十、LAMP与LNMP加速与缓存优化进阶实战上部

实例: 一. 所有服务器配置定时时间同步,必须通过web server上网. 有两种方式: 1.服务器A能进行上网,作为web server ,通过指定为ntp服务器,所有服务器访问这个服务器 2.服务器A能进行上网,作为网关,所有服务器通过此网关连接外部互联网 例如:B,C,D三台主机,如何添加路由条目,让其能够访问互联网,指向A主机吗? 1)B,C,D三台主机的上网网关配置成A的内网卡地址 2)A 上开启路由转发/etc/sysctl.conf net.ipv4_forward=1 执行:s

LAMP和LNMP环境PHP缓存加速器的原理

LAMP环境PHP缓存加速器的原理      LAMP=Linux+Apache+MySQL+PHP 1. Apache接收客户的PHP程序请求,并根据规则过滤之. 2.Apache将PHP程序请求传送给PHP处理模块libphp5.so. 3.PHP引擎定位磁盘上的PHP文件,并将其加载到内存中解析. 4.PHP处理模块libphp5.so将PHP源代码编译成为操作码. 5.PHP处理模块libphp5.so执行操作码,然后把操作码缓存起来. 6. Apache接收客户端新的PHP程序请求,P

二、LAMP与LNMP web架构深度优化实战-第二部

1. 配置nginx gzip压缩功能    服务器对发出的内容进行压缩,带宽少了,体验好,速度快,但是服务端压,会使cpu使用高,压缩比高的进行压缩:文本.程序文件.数据文件.图片视频不要压缩,一般不会减少,而且占比cpu大.       gzip on :压缩配置       gzip_min_length  1k gzip_buffers     4   16k       gzip_comp_level 2   压缩比例,用来指定GZIP压缩比,1 压缩比最小,处理速度最快:9 压缩比最

LAMP和LNMP深度优化

LAMP与LNMP web架构深度优化 企业连接数据库一般用域名,因为连接数据库的文件可能有多个,那么当一旦数据库ip改了,那么数据库连接的文件也都需要修改,这样极容易漏掉而出现错误,正确的做法是每个数据库连接文件里都写连接数据库的域名,然后在本地host里将数据库ip及域名做一个解析 数据库tar备份数据文件 必须停机才能保持备份的数据库和线上的一致,那么企业是不可能随意停机的,所以一般会用到热备工具如mysqldump等进行实时同步备份. 必须要总结的: nginx.conf httpd.c

WDCP,LNMP安装PHP缓存加速扩展eAccelerator,xcache和memcached

VPS主机性能配置如果太差,则在运行Wordpress博客和Discuz! 论坛等高消耗程序时能够明显感觉出VPS有些吃力.另外,即使VPS主机的CPU.内存.硬盘I/O等性能足够好,但是在面对大流量时则有可能导致PHP执行效率降低,网页打开速度变慢等不正常的情况. 为了能够在低配置的VPS主机上Web也能跑出流畅的感觉和在面对流量高峰时服务器也能从容应对大量的应该访问请求,我们一般会给PHP安装上几点缓存加速扩展:eAccelerator,xcache和memcached,优化动态内容缓存,提

PHP服务缓存优化之ZendOpcache、xcache、eAccelerator

PHP服务缓存优化原理 Nginx 根据扩展名或者过滤规则将PHP程序请求传递给解析PHP的FCGI,也就是php-fpm进程 缓存操作码(opcode) Opcode,PHP编译后的中间文件,缓存给用户访问 当客户端请求一个PHP程序时,服务器的PHP引擎会解析该PHP程序,并将其编译为特定的操作码文件,该文件是执行PHP代码后的一种二进制文件表现形式.默认情况下,这个编译好的操作码文件由PHP引擎执行后丢弃:而操作码缓存的原理就是将编译后的操作码保存下来,并放入到共享内存里,以便再下一次调用