php7性能测试,PHP性能

本文目录一览:

php7调试怎么在phpstorm中设置

在max上用phpstorm里debug调试php

背景

最近为了完成某个需求,在看`smarty`源码,当我尝试直接看,痛苦的快吐血,工欲善其事必先利器,虽然之前一直使用phpstorm调试nodejs,但是还没有用phpstorm来debug过php。

建议

先看看这个:PhpStorm 8.0.2 Help :: Configuring Xdebug

## 安装xdebug

1. 打开:Xdebug: Downloads 点击source来下载源码包

2. 然后安装

“`bash

解压tar包

tar -xzf xdebug-2.2.5.tgz

进入根目录

cd xdebug-2.2.5

执行phpize

phpize

编译安装xdebug

./configure –enable-xdebug

make

make install

“`

配置到php

1. 打开php.ini文件

“`bash

cd /private/etc/

#默认没有php.ini,需要拷贝一下

sudo cp php.ini.default php.ini

sudo vi php.ini

“`

2. 在下面加入

“`bash

[Xdebug]

zend_extension=”/usr/local/php_user/xdebug.so”

xdebug.remote_enable = on

;xdebug.remote_handler=dbgp

xdebug.remote_host=”127.0.0.1″

xdebug.remote_port=9000

xdebug.profiler_enable = 1

xdebug.profiler_enable_trigger = off

xdebug.profiler_output_name = cachegrind.out.%t.%p

xdebug.remote_autostart = on

“`

3. 重启`apache`

“`bash

sudo apachectl restart

“`

4. 查看phpinfo()信息里面搜索一下`debug`如果有,成功。

配置phpstorm

1. 打开phpstorm,进入顶部导航`phpstrom-perferences..`

2. 点击`php`项,点击`interpreter`后面的`…`按钮

3. 点击`php home`后面的刷新(`…`后面)按钮

4. 这时候你将看到`Debugger: Not installed`变成`Xdebug 2.3.2`(版本号可能不同)

6. 进入`php`栏目下的`Server`,点击`+`新建一个server:host填写你本地的host(如127.0.0.1),点击`apply`保存,并退出`perferences`对话框。

7. 点击顶部导航`run`-点击`+`-选择`PHP Web Application`-选择上一步新建的`server`,`start URL`填入,你要debug的php文件地址,下面会生成一个地址,这个地址在浏览器应该能正常浏览测试的;点击`apply`进行保存。

开始愉快的使用

1. 在你要debug的文件行数字右侧一列,点击一下就会有一个断点。

2. 点击顶部导航`run`-debug,选择你刚刚新建的`debug`名称,这时候会弹出浏览器加载这个php文件了

php7与php5的区别

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位支持

php写的程序,进行性能测试,各项资源都正常,增加并发,tps不增长,响应时间增长,您觉得瓶颈在哪?

问题没说清楚,也不好下定论啊,如果性能测试就压100个用户,在没达到瓶颈的情况,各项指标应该都是平稳的,波动起伏不会太大,只有慢慢增加用户,才会知道瓶颈所在随着用户的增加,下面各值会跟随增加吞吐量,CPU,点击率。。。等事务响应时间(这个系统一般没达到极限是不变的)当事务响应时间开始明显变长,说明系统达到了极限可以是CPU极限,可能是点击率极限,可能是网络极限。。。你继续增加用户了,响应时间变长,吞吐量点击开始明显下降,说明就到瓶颈了,然后在看是什么地方的瓶颈如果单一的吞吐量上不去,也可能是用户访问不多,吞吐量当然上不去

鸟哥:让php7达到最高性能的几个tips

1. Opcache

记得启用Zend Opcache, 因为PHP7即使不启用Opcache速度也比PHP-5.6启用了Opcache快, 所以之前测试时期就发生了有人一直没有启用Opcache的事情. 启用Opcache非常简单, 在php.ini配置文件中加入:

zend_extension=opcache.so

opcache.enable=1

opcache.enable_cli=1″

2. 使用新的编译器

使用新一点的编译器, 推荐GCC 4.8以上, 因为只有GCC 4.8以上PHP才会开启Global Register for opline and execute_data支持, 这个会带来5%左右的性能提升(Wordpres的QPS角度衡量)

其实GCC 4.8以前的版本也支持, 但是我们发现它支持的有Bug, 所以必须是4.8以上的版本才会开启这个特性.

3. HugePage

前面文章介绍过

4. Opcache file cache

开启Opcache File Cache(实验性), 通过开启这个, 我们可以让Opcache把opcode缓存缓存到外部文件中, 对于一些脚本, 会有很明显的性能提升.

在php.ini中加入:

opcache.file_cache=/tmp

这样PHP就会在/tmp目录下Cache一些Opcode的二进制导出文件, 可以跨PHP生命周期存在.

5. PGO

如果你的PHP是专门为一个项目服务, 比如只是为你的Wordpress, 或者drupal, 或者其他什么, 那么你就可以尝试通过PGO, 来提升PHP, 专门为你的这个项目提高性能.

具体的, 以wordpress 4.1为优化场景.. 首先在编译PHP的时候首先:

$ make prof-gen

然后用你的项目训练PHP, 比如对于Wordpress:

$ sapi/cgi/php-cgi -T 100 /home/zk/local/www/htdocs/ wordpress/index.php /dev/null

也就是让php-cgi跑100遍wordpress的首页, 从而生成一些在这个过程中的profile信息.

最后:

$ make prof-clean$ make prof-use make install

这个时候你编译得到的PHP7就是为你的项目量身打造的最高性能的编译版本.

原创文章,作者:小蓝,如若转载,请注明出处:https://www.506064.com/n/187912.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
小蓝小蓝
上一篇 2024-11-28 06:25
下一篇 2024-11-28 06:25

相关推荐

  • PHP和Python哪个好找工作?

    PHP和Python都是非常流行的编程语言,它们被广泛应用于不同领域的开发中。但是,在考虑择业方向的时候,很多人都会有一个问题:PHP和Python哪个好找工作?这篇文章将从多个方…

    编程 2025-04-29
  • 如何优化 Git 性能和重构

    本文将提供一些有用的提示和技巧来优化 Git 性能并重构代码。Git 是一个非常流行的版本控制系统,但是在处理大型代码仓库时可能会有一些性能问题。如果你正在处理这样的问题,本文将会…

    编程 2025-04-29
  • PHP怎么接币

    想要在自己的网站或应用中接受比特币等加密货币的支付,就需要对该加密货币拥有一定的了解,并使用对应的API进行开发。本文将从多个方面详细阐述如何使用PHP接受加密货币的支付。 一、环…

    编程 2025-04-29
  • 使用@Transactional和分表优化数据交易系统的性能和可靠性

    本文将详细介绍如何使用@Transactional和分表技术来优化数据交易系统的性能和可靠性。 一、@Transactional的作用 @Transactional是Spring框…

    编程 2025-04-28
  • 使用PHP foreach遍历有相同属性的值

    本篇文章将介绍如何使用PHP foreach遍历具有相同属性的值,并给出相应的代码示例。 一、基础概念 在讲解如何使用PHP foreach遍历有相同属性的值之前,我们需要先了解几…

    编程 2025-04-28
  • Python性能优化方案

    本文将从多个方面介绍Python性能优化方案,并提供相应的示例代码。 一、使用Cython扩展 Cython是一个Python编译器,可以将Python代码转化为C代码,可显著提高…

    编程 2025-04-28
  • Python AUC:模型性能评估的重要指标

    Python AUC是一种用于评估建立机器学习模型性能的重要指标。通过计算ROC曲线下的面积,AUC可以很好地衡量模型对正负样本的区分能力,从而指导模型的调参和选择。 一、AUC的…

    编程 2025-04-28
  • Python性能分析: 如何快速提升Python应用程序性能

    Python是一个简洁高效的编程语言。在大多数情况下,Python的简洁和生产力为开发人员带来了很大便利。然而,针对应用程序的性能问题一直是Python开发人员需要面对的一个难题。…

    编程 2025-04-27
  • PHP获取301跳转后的地址

    本文将为大家介绍如何使用PHP获取301跳转后的地址。301重定向是什么呢?当我们访问一个网页A,但是它已经被迁移到了另一个地址B,此时若服务器端做了301重定向,那么你的浏览器在…

    编程 2025-04-27
  • PHP登录页面代码实现

    本文将从多个方面详细阐述如何使用PHP编写一个简单的登录页面。 1. PHP登录页面基本架构 在PHP登录页面中,需要包含HTML表单,用户在表单中输入账号密码等信息,提交表单后服…

    编程 2025-04-27

发表回复

登录后才能评论