51脚本 php 缓存,PHP缓存加速

添加系统环境变量

echo 'export LC_ALL=C'>> /etc/profile

source /etc/profile

解决后面perl程序插件的编译问题。

编译安装php扩展模块

1.安装eaccelerator缓存加速模块

eAccelerator是一个自由开放源代码的php加速、优化和动态内容缓存的扩展模块。

它可以提升php程序的缓存性能,降低php程序在解析时对服务器的性能开销。eaccelerator还可以对

php进行优化,加快其执行效率,使php程序代码执行效率提高1-10倍

下载 wget https://github.com/downloads/eaccelerator/eaccelerator/eaccelerator-0.9.6.1.tar.bz2

[root@lamp01 tools]# tar jxf eaccelerator-0.9.6.1.tar.bz2

cd eaccelerator-0.9.6.1

[root@lamp01 eaccelerator-0.9.6.1]# /usr/local/php/bin/phpize

[root@lamp01 eaccelerator-0.9.6.1]# ./configure --enable-eaccelerator=shared \

--with-php-config=/usr/local/php/bin/php-config

mak make install

2.安装memcache缓存扩展模块

Memcache是一个高性能的分布式的内存对象缓存系统。

简单来说就是将数据调用到内存中,然后从内存中读取,从而大大提高读取速度。

Memcache分为服务端和客户端两部分,本文就是客户端插件在php服务中的安装

/usr/local/php/bin/phpize

./configure --with-php-config=/usr/local/php/bin/php-config

make&&make install

3.安装PDO_MYSQL扩展模块

PDO扩展为php访问数据库定义了一个轻量级的、一致性的接口,它提供了一个数据访问抽象层,这样,无论使用

什么数据库,都可以通过一致的函数执行查询和获取数据。

wget http://pecl.php.net/get/PDO_MYSQL-1.0.2.tgz

tar zxf PDO_MYSQL-1.0.2.tgz

cd PDO_MYSQL-1.0.2

/usr/local/php/bin/phpize

./configure --with-php-config=/usr/local/php/bin/php-config --with-pdo-mysql=/usr/local/mysql

make&&make install

cd ../

4.安装图像处理程序及imagick扩展模块

1.安装ImageMagisk图像软件

ImageMagisk是一套功能强大、稳定且免费的工具集和开发包,可以用来读写和处理超过89中基本格式的

图片文件。利用ImageMagisk,你可以根据web应用程序的需要动态生成图片,还可以对一个或一组图片进行

操作,如改变大小,旋转等

wget http://www.imagemagick.org/download/ImageMagick.tar.gz

tar zxf ImageMagick-i686-pc-cygwin.tar.gz

tar zxf ImageMagick.tar.gz

cd ImageMagick-7.0.7-14/

./configure

make

make install

cd ..

2.图像软件安装后接着安装imagick php扩展插件

imagick插件需要imagemagick软件的支持。

wget http://pecl.php.net/get/imagick-3.4.1.tgz

tar zxf imagick-3.4.1.tgz

cd imagick-3.4.1

/usr/local/php/bin/phpize

./configure --with-php-config=/usr/local/php/bin/php-config

make

make install

ls -l /usr/local/php/lib/php/extensions/no-debug-zts-20090626/

cd ..

5.安装zend缓存及加速扩展模块

zend optimizer使用优化代码的方法来提高php v5.1-v5.2应用程序的执行速度。实现的原理是对那些在被

最终执行前由运行编译器(Run-Time Compiler)产生的代码进行优化。

本次实例PHP用的是5.3版本,暂时不安装zend

6.安装xcache缓存加速扩展模块

xcache的2个特点

将php代码进行编译(类似于.NET和JAVA的编译,内部机制不同),这样可以不用重复读取php文件,

加快整个程序的运行效率

可以缓存数据到内存中

wget http://xcache.lighttpd.net/pub/Releases/3.0.4/xcache-3.0.4.tar.gz

tar zxf xcache-3.0.4.tar.gz

cd xcache-3.0.4

/usr/local/php/bin/phpize

./configure --enable-xcache --with-php-config=/usr/local/php/bin/php-config

make

make install

ls -l /usr/local/php/lib/php/extensions/no-debug-zts-20090626/

检查安装的php扩展模块

[root@lamp01 xcache-3.0.4]# ls -l /usr/local/php/lib/php/extensions/no-debug-zts-20090626/

total 2516

-rwxr-xr-x 1 root root 396125 Dec 16 15:01 eaccelerator.so

-rwxr-xr-x 1 root root 1216436 Dec 16 17:49 imagick.so

-rwxr-xr-x 1 root root 237730 Dec 16 15:29 memcache.so

-rwxr-xr-x 1 root root 153788 Dec 16 15:47 pdo_mysql.so

-rwxr-xr-x 1 root root 563212 Dec 16 18:14 xcache.so

7.php配置扩展模块

修改php配置文件/usr/local/php/lib/php.ini

查找; extension_dir = "./",将./ 修改为/usr/local/php/lib/php/extensions/no-debug-zts-20090626/

在结尾添加

extension = memcache.so

extension = pdo_mysql.so

extension = imagick.so

可以使用以下方式加入

cat >>/usr/local/php/lib/php.ini<

extension = memcache.so

extension = pdo_mysql.so

extension = imagick.so

EOF

php.ini中加注释的话,用分号

8.配置eAccelerator插件

1.配置缓存目录daemon为apache用户

[root@lamp01 tmp]# egrep "User|Group" /usr/local/apache2/conf/httpd.conf

User/Group: The name (or #number) of the user/group to run httpd as.

User daemon

Group daemon

LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" combined

LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\" %I %O" combinedio

User home directories

mkdir -p /tmp/eaccelerator

chown -R daemon.daemon /tmp/eaccelerator

2,配置eaccelerator参数

本段配置要放在zend内容配置前面

cat >>/usr/local/php/lib/php.ini<

[eaccelerator]

extension=eaccelerator.so

eaccelerator.shm_size="64"

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="3600"

eaccelerator.shm_prune_period="3600"

eaccelerator.shm_only="0"

eaccelerator.compress="1"

eaccelerator.compress_level="9"

EOF

[root@lamp01 php]# bin/php -v

PHP 5.3.10 (cli) (built: Dec 10 2017 17:35:52)

Copyright (c) 1997-2012 The PHP Group

Zend Engine v2.3.0, Copyright (c) 1998-2012 Zend Technologies

with eAccelerator v0.9.6.1, Copyright (c) 2004-2010 eAccelerator, by eAccelerator

查看缓存目录。

[root@lamp01 tmp]# cd eaccelerator/

[root@lamp01 eaccelerator]# ll

total 64

drwxrwxrwx 18 root root 4096 Dec 16 19:57 0

drwxrwxrwx 18 root root 4096 Dec 16 19:57 1

drwxrwxrwx 18 root root 4096 Dec 16 19:57 2

drwxrwxrwx 18 root root 4096 Dec 16 19:57 3

drwxrwxrwx 18 root root 4096 Dec 16 19:57 4

drwxrwxrwx 18 root root 4096 Dec 16 19:57 5

drwxrwxrwx 18 root root 4096 Dec 16 19:57 6

drwxrwxrwx 18 root root 4096 Dec 16 19:57 7

drwxrwxrwx 18 root root 4096 Dec 16 19:57 8

drwxrwxrwx 18 root root 4096 Dec 16 19:57 9

drwxrwxrwx 18 root root 4096 Dec 16 19:57 a

drwxrwxrwx 18 root root 4096 Dec 16 19:57 b

drwxrwxrwx 18 root root 4096 Dec 16 19:57 c

drwxrwxrwx 18 root root 4096 Dec 16 19:57 d

drwxrwxrwx 18 root root 4096 Dec 16 19:57 e

drwxrwxrwx 18 root root 4096 Dec 16 19:57 f

测试phpinfo

上次配置的是基于域名访问

[root@lamp01 tuwei]# cat phpinfo.php

phpinfo();

?>

[root@lamp01 tuwei]# pwd

/var/tuwei

重启apache

/usr/local/apache2/bin/apachectl graceful

访问phpinfo.php页面

然后查看缓存目录

[root@lamp01 eaccelerator]# tree

。。。。。。

├── 4

│?? ├── 0

│?? ├── 1

│?? ├── 2

│?? ├── 0

│?? ├── 1

│?? ├── 2

│?? ├── 3

│?? │?? └── eaccelerator-3502.206145

│?? ├── 4

│?? ├── 5

eaccelerator-3502.206145就是cache的内容

10.9.配置xcache插件

一般认为,xcache和eaccelerator功能相近,安装一个即可。

配置xcache参数

php.ini中加入

echo ";xcache config">>/usr/local/php/lib/php.ini

cat /tuwei/tools/xcache-3.0.4/xcache.ini >>/usr/local/php/lib/php.ini

修改php.ini配置文件

zend_extension=...

zend_extension_ts=... 这两行注释

;extension=xcache.so 取消注释

调整一下参数改后为

xcache.size = 128M

xcache.count = 2

xcache.ttl = 86400

xcache.gc_interval = 3600

xcache.var_size = 0

root@lamp01 php]# bin/php -v

PHP Warning: Cannot load module 'XCache' because conflicting module 'eAccelerator' is already loaded in Unknown on line 0

PHP 5.3.10 (cli) (built: Dec 10 2017 17:35:52)

Copyright (c) 1997-2012 The PHP Group

Zend Engine v2.3.0, Copyright (c) 1998-2012 Zend Technologies

with eAccelerator v0.9.6.1, Copyright (c) 2004-2010 eAccelerator, by eAccelerator

将eacclerator配置放到xcache后面试下

[root@lamp01 lib]# ../bin/php -v

PHP 5.3.10 (cli) (built: Dec 10 2017 17:35:52)

Copyright (c) 1997-2012 The PHP Group

Zend Engine v2.3.0, Copyright (c) 1998-2012 Zend Technologies

with eAccelerator v0.9.6.1, Copyright (c) 2004-2010 eAccelerator, by eAccelerator

with XCache v3.0.4, Copyright (c) 2005-2013, by mOo

with XCache Cacher v3.0.4, Copyright (c) 2005-2013, by mOo

Segmentation fault (core dumped)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值