在app/Http/Kernel文件中,关掉频率限制中间件throttle。
修改php-fpm.conf文件,修改pm和pm.max_children 配置,pm设置为static,pm.max_children设置为50,以获得较好的并发性能。
此时的并发大约为为 7 qps
在配置文件php.ini文件中开启opcache
此时的达到了 90qps,性能是未开启时的 10 倍以上!。
开源的laravel-swoole加速包
在项目目录下运行composer命令安装;在nginx的配置文件中配置,将请求转发到swoole监听的端口。
用 ab 压测 : ab -n 1000 -c 100 http://test.laravel.com/api/test
速度起飞!达到了800qps!
也就是一百多倍?
当然这只是一个比较简单的测试,但是总的来说opcache扩展和swoole扩展对php脚本性能的提升还是很明显的。
八重樱:PHP 互联网架构师成长之路*「设计模式」终极指南
PHP 互联网架构师 50K 成长指南+行业问题解决总纲(持续更新)
面试10家公司,收获9个offer,2020年PHP 面试问题
★如果喜欢我的文章,想与更多资深开发者一起交流学习的话,获取更多大厂面试相关技术咨询和指导,欢迎加入我们的群啊,暗号:phpzh
2020年最新PHP进阶教程,全系列!
问题php自身提供了很多扩展,比如curl,gmp, mbstring等等。我们在编译安装php时未必安装了所有扩展。那么在安装完php后,如果想单独安装某个php自身的扩展怎么办呢?
我们以curl扩展模块的安装为例说明如何单独添加扩展。
步骤
1.进入php源码的扩展目录。本例中我的源码对应目录如下:
/search/src/php-7.0.14/ext
1
2.进入模块目录,我们安装的是curl扩展,所以进入curl目录。此时,我们所在的目录是
/search/src/php-7.0.14/ext/curl
1
3.执行phpize。注意,如果你的机器上有多个php版本,一定要执行你准备安装扩展的php版本对应的phpize。比如,我的机器上同时有php7和php5.3.3。我当前准备为php7安装curl扩展。所以执行php7对应的phpize
1 /usr/local/php70/bin/phpize
2
3 结果类似:
4 Configuring for:
5 PHP Api Version: 20151012
6 Zend Module Api No: 20151012
7 Zend Extension Api No: 320151012
4.执行
./configure --with-php-config=/usr/local/php70/bin/php-config
1
说明:如果你的机器上只有一个php版本,大多时候不需要特别使用–with-php-config指明相应的php-config所在位置。
5.执行make,之后会在./modules/目录下生成curl.so文件
6.执行make install
结果类似:
Installing shared extensions: /usr/local/php70/lib/php/20151012/
1
2
执行结果告诉你将curl.so安装到了哪个目录。
一般情况,如果你正确的指定了php-config或者你的机器只有一个php版本,so都会被正确安装到相应php的extension_dir。如果执行make install后,extension_dir目录下没有相应的so,可以手动将第5步中生成的so文件cp过去。
要查看具体extension_dir,可以执行如下命令。
php -i| grep extension_dir
结果类似
extension_dir =>/usr/local/php70/lib/php/20151012/ =>/usr/local/php70/lib/php/20151012/
1
2
3
7.在php.ini中增加
extension=curl.so
1
如果不知道php.ini的具体位置,可以通过如下命令查看
php --ini
1
8.执行如下命令,查看是否安装成功
php -m | grep curl
1
如果你看到了curl, 恭喜你,安装成功!
php5与php7之间的区别:1、性能提升:PHP7比PHP5.0性能提升了两倍。
2、以前的许多致命错误,现在改成抛出异常。
3、PHP 7.0比PHP5.0移除了一些老的不在支持的SAPI(服务器端应用编程端口)和扩展。
4、PHP 7.0比PHP5.0新增了空接合操作符。
5、PHP 7.0比PHP5.0新增加了结合比较运算符。
6、PHP 7.0比PHP5.0新增加了函数的返回类型声明。
7、PHP 7.0比PHP5.0新增加了标量类型声明。
8、PHP 7.0比PHP5.0新增加匿名类。
9、错误处理和64位支持
欢迎分享,转载请注明来源:夏雨云
评论列表(0条)