我集体还正在应用PHP5.6,7.3的话纯正是拿来做测试的,由于PHP7曾经支持强类型了,再也不支持依据字符串挪用函数的办法了,以是我的集体名目的PHP版本停留正在了5.6。
比来的话想折腾一下,尝尝PHP5.六、7.3以及Tomcat七、八、9的各方面速率怎样样,之前看过一些文章说PHP操作数据库的速率更快,而Java解决营业逻辑的速率更快,以是我就想营业逻辑交给Java行止理,而数据库操作就交给PHP行止理。
然而否这样速率就更快呢,比照一下,数听说话!
趁便说一下,效劳器治理我用的是浮图面板,效劳软件的装置全副都是正在浮图面板中进行的。
测试媒介
正在测试的进程中发现Tomcat7以及8.5的后果相仿,预计9也是这个后果,以是Tomcat9我就意外试了。Tomcat局部只正在营业逻辑解决测试7以及8.5,其他只测试8.5
效劳器设置装备摆设
● 零碎:CentOS Linux 7.6.1810 (Core)
● 浮图版本:6.9.8
● 厂商:baidu智能云
● 类型:密集较量争论型ic3
● CPU:1核
● 内存:1GB
速率比照
营业逻辑解决速率
从0加到10000000
PHP5.6
<?php $time_start = microtime(true); $count = 0; for ($i = 0; $i < 10000000; ++ $i) { $count += $i; } $time_end = microtime(true); echo ($time_end - $time_start); // 后果:0.34648394584656
后果:0.34648394584656
PHP7.3
<?php $time_start = microtime(true); $count = 0; for ($i = 0; $i < 10000000; ++ $i) { $count += $i; } $time_end = microtime(true); echo ($time_end - $time_start); // 后果:0.12653613090515
后果:0.12653613090515
论断:PHP7.3正在营业逻辑解决方面比5.6快了三倍
Tomcat7
<% java.util.Date d1 = new java.util.Date(); long start_time = d1.getTime(); // 单元:毫秒 long count = 0; for (long i = 0; i <= 10000000; ++ i) { count += i; } java.util.Date d2 = new java.util.Date(); long end_time = d2.getTime(); // 单元:毫秒 out.println(end_time - start_time); // 后果:17毫秒 %>
后果:17毫秒,多刷新几回就变为了4~5毫秒,次要以4毫秒为主
Tomcat8.5
后果:99毫秒,多刷新几回也是4毫秒
营业逻辑测试总结
究竟结果Java是半编译半诠释型的言语,速率快很失常,PHP7达到了100多毫秒的样子,就是PHP5逊了点才300多毫秒
数据库IO测试
应用PDO的prepare以及execute进行测试
PHP5.6
● INSERT拔出10000行:37.575320005417秒
● SELECT读取10000行:0.010236978530884秒
● SELECT轮回读取10000行:1.0460438728333秒
● UPDATE更新10000行:0.044967889785767秒
● UPDATE轮回更新10000行:36.463224887848秒
● DELETE删除了10000行:0.034432888031006秒
● DELETE轮回删除了10000行:37.198384046555秒
PHP7.3
● INSERT拔出10000行:33.949599027634秒
● SELECT读取10000行:0.021260023117065秒
● SELECT轮回读取10000行:1.0032389163971秒
● UPDATE更新10000行:0.040410995483398秒
● UPDATE轮回更新10000行:36.759881019592秒
● DELETE删除了10000行:0.046122074127197秒
● DELETE轮回删除了10000行:35.682950973511秒
PHP总结:数据库IO简直不版本差别,另有执行单条语句比轮回执行一条语句速率快
Tomcat8.5
编译前为第一次执行,编译后为第二次执行
● INSERT拔出10000行:编译前:39.738秒,编译后:37.104秒
● SELECT读取10000行:编译前:0.079秒,编译后:0.028秒
● SELECT轮回读取10000行:编译前:2.303秒,编译后:1.775秒
● UPDATE更新10000行:编译前:0.060秒,编译后:0.040秒
● UPDATE轮回更新10000行:编译前:43.326秒,编译后:40.847秒
● DELETE删除了10000行:第一次执行:0.137秒
● DELETE轮回删除了10000行:第一次执行:40.597秒
总结:Java的营业逻辑才能强,但数据库IO速率比PHP慢,PHP则相同。
夹杂开发测试
营业逻辑由Java编写,PHP经过CURL挪用Java,测试速率
后果:
第一次测试:0.51814317703247秒
第二次测试:0.016547918319702秒
总结:
第一次测试多是由于Java端需求编译而孕育发生的工夫,第二次测试则再也不需求编译,以是速率很快。
前面又进行了若干次测试,后果均比拟理想,速率上比PHP7都要快10倍阁下。
只不外夹杂开发的缺陷就是开发效率没有高,可能会孕育发生比拟多的坑,但运转上能各取其优。
我集体对此示意中立立场,没有保举也没有拥护,由于各类名目说欠好可能就存正在着相干需要用这类办法多是最好的抉择。
以上就是PHP5.6与7.3,Tomcat7与8.5的速率比照的具体内容,更多请存眷资源魔其它相干文章!
标签: php5.6 php7开发教程 php7开发资料 php7开发自学 PHP7.3
抱歉,评论功能暂时关闭!