热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

PHP的库

PHP的库函数用C实现,而Java核心运行时类库(jdkjrelibrt.jar,大于60MB)用Java编写(jdksrc.zip),所以Java应用运行的时候,用户编写的代码以
PHP的库函数用C实现,而Java核心运行时类库(jdk/jre/lib/rt.jar,大于60MB)用Java编写(jdk/src.zip), 所以Java应用运行的时候,用户编写的代码以及引用的类库和框架都要在JVM上解释执行. Java的HotSpot机制,直到有方法被执行10000次(
-XX:CompileThreshold=10000
)才会触发JIT编译, 在此之前运行在解释模式下,以避免出现JIT编译花费的时间比方法解释执行消耗的时间还要多的情况. 所以说,Java在压力测试中显得快,但实际应用就不会这么体面了.




编译型语言,以及基于JIT运行时编译的语言,在计算密集型操作时,对比无编译的动态脚本语言有数量级的优势.但是,Web应用更多的瓶颈是出现在IO上,包括网络IO,数据库IO等各种IO.而PHP你可以认为是一种C跟Web的胶水语言,PHP不负责密集计算,比如MySQL数据库CRUD就涉及密集计算,
数据在内存上时,是计算密集,数据在磁盘上时,是IO密集
,而MySQL是C/C++实现的服务,不管是PHP还是其他语言,对MySQL来说都是客户端,MySQL自身出现瓶颈时,不管是PHP还是其他语言都无能为力.




也就是说,操作数据库时,是C/C++实现的数据库引擎在对B+树进行计算密集的二分查找,不是PHP.所以PHP计算的快慢并不会影响数据库自身的计算快慢.




所以说,不要拿动态脚本语言跟编译型/JIT型语言比计算,因为没有意义.




在没有JIT的动态脚本的对比里面,PHP还是相当快的,PHP5都比CPython和Ruby快,更不用说PHP7了.当然了,PHP7也在为PHP加入JIT来提升计算性能,现在看来还是有成果的.
比如
php-src/Zend/bench.php测试中,PHP JIT速度是PHP 5.4的10倍.



推荐阅读
  • 1、概述首先和大家一起回顾一下Java消息服务,在我之前的博客《Java消息队列-JMS概述》中,我为大家分析了:然后在另一篇博客《Java消息队列-ActiveMq实战》中 ... [详细]
  • 开发笔记:Python之路第一篇:初识Python
    篇首语:本文由编程笔记#小编为大家整理,主要介绍了Python之路第一篇:初识Python相关的知识,希望对你有一定的参考价值。Python简介& ... [详细]
  • 本文介绍了如何使用php限制数据库插入的条数并显示每次插入数据库之间的数据数目,以及避免重复提交的方法。同时还介绍了如何限制某一个数据库用户的并发连接数,以及设置数据库的连接数和连接超时时间的方法。最后提供了一些关于浏览器在线用户数和数据库连接数量比例的参考值。 ... [详细]
  • 本文介绍了在SpringBoot中集成thymeleaf前端模版的配置步骤,包括在application.properties配置文件中添加thymeleaf的配置信息,引入thymeleaf的jar包,以及创建PageController并添加index方法。 ... [详细]
  • 知识图谱——机器大脑中的知识库
    本文介绍了知识图谱在机器大脑中的应用,以及搜索引擎在知识图谱方面的发展。以谷歌知识图谱为例,说明了知识图谱的智能化特点。通过搜索引擎用户可以获取更加智能化的答案,如搜索关键词"Marie Curie",会得到居里夫人的详细信息以及与之相关的历史人物。知识图谱的出现引起了搜索引擎行业的变革,不仅美国的微软必应,中国的百度、搜狗等搜索引擎公司也纷纷推出了自己的知识图谱。 ... [详细]
  • 本文介绍了RPC框架Thrift的安装环境变量配置与第一个实例,讲解了RPC的概念以及如何解决跨语言、c++客户端、web服务端、远程调用等需求。Thrift开发方便上手快,性能和稳定性也不错,适合初学者学习和使用。 ... [详细]
  • Java验证码——kaptcha的使用配置及样式
    本文介绍了如何使用kaptcha库来实现Java验证码的配置和样式设置,包括pom.xml的依赖配置和web.xml中servlet的配置。 ... [详细]
  • gitlab重置password
    ruby没怎么学,自己搭建的gitlab的rootpassword又忘了。幸好看见此帖子,试验okhttp:roland.kierkels.netgitreset-your-git ... [详细]
  • POCOCLibraies属于功能广泛、轻量级别的开源框架库,它拥有媲美Boost库的功能以及较小的体积广泛应用在物联网平台、工业自动化等领域。POCOCLibrai ... [详细]
  • Hadoop——Hive简介和环境配置
    一、Hive的简介和配置1.简介Hive是构建在Hadoop之上的数据操作平台lHive是一个SQL解析引擎,它将SQL转译成MapReduce作业,并 ... [详细]
  • Windows简单部署Exceptionless
    部署准备Elasticsearch、Exceptionless.API、Exceptionless.UI、URLRewrite、.NET运行时 1、安装ElasticSearch1 ... [详细]
  • “双十一”过后,你的数据库还好吗?
    刚刚过去的“双十一”对线上零售业来说是一场全方面的压力测试。在美国,十一月末的“黑色星期五”(BlackFriday)和“双十一”有着异曲同工之妙,对线上零售商来说也是一年一度的大 ... [详细]
  • 压力测试_单节点数据库的压力测试
    mysqlslap是mysql自带的基准测试工具,优点:查询数据,语法简单 ... [详细]
  • 招聘 | 涂鸦智能招聘IoT安全人才
    招聘 | 涂鸦智能招聘IoT安全人才 ... [详细]
  • Netty(三)
    开发十年,就只剩下这套架构体系了!>>>  熟悉TCP编程的读者可能都会知道,无论是服务端 ... [详细]
author-avatar
星罗
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有