php中的性能挖掘

搞php以后,感觉总是很别扭,因为我觉得php会很慢,因为array普遍,在Key的循环查找不是很浪费性能么!因为我以前搞.net和java,他们是用的大多是寻址和索引方式,而php中太多是使用Key名称去调用值。这不是太浪费性能吗!
实际上php上array确实有点浪费性能,不想我想象中的哪样不堪,在阅读PHP源码时发现,php在配对时使用了HashCode进行配对,存储时也存放了HashCode,在查找值时通过Hashcode进行配对,这大大减轻了配对成本。而在phper的角度来看,这点性能对于灵活度而言,是可以不计的吧!

2、php中的引用类型
因为我是从java/.net程序员转行到php,总是以他们的角度来思考php的运行,结果我差点气的又放弃php,但经过阅读一篇php引用类型的文章后改变了一点观点。在.net中,int a=1,b=a;时,会开辟两个内存空间来存储两个变量,而在php中并非如此,php会把第二个变量指向a的内存地址,只是在b写入时才会开辟空间。这在海量的变量中节省了不知道多少内存。因为当初我还疑惑是不是把函数前和循环时都加上&附号,以避免重复内存的浪费,当了解到有“写复制”的特性时,真的觉得这个设计太高明了!

看来php占据web市场不是没有理由的,他的灵活高性能,让人觉得他就是一个艺术品。

时间: 2024-08-09 22:00:27

php中的性能挖掘的相关文章

优化Web中的性能

优化Web中的性能 简介 web的优化就是一场阻止http请求最终访问到数据库的战争. 优化的方式就是加缓存,在各个节点加缓存. web请求的流程及节点 熟悉流程及节点,才能定位性能的问题.而且优化的顺序一般也是按请求的流程逐一优化.这里的流程只是做个概要,并不代表全面. 整个流程是以最快的方式让用户看到结果 定位的方法 思路是:把看不见的http,具体化.可视化. 定位是优化的前提.没有准确的定位就无法有效的解决问题. 浏览器 看整个请求的时间 看整个页面加载的时间 看页面加载的数据大小 看页

java编程中'为了性能'一些尽量做到的地方

java编程中'为了性能'一些尽量做到的地方 2011-08-16 14:34:59|  分类: JAVA |  标签:java编程  缓存经常使用的对象  |举报|字号 最近的机器内存又爆满了,出了新增机器内存外,还应该好好review一下我们的代码,有很多代码编写过于随意化,这些不好的习惯或对程序语言的不了解是应该好好打压打压了. 下面是参考网络资源和总结一些在java编程中尽可能做到的一些地方- 1.尽量在合适的场合使用单例 使用单例可以减轻加载的负担,缩短加载的时间,提高加载的效率,但并

android app 开发过程中 对于性能优化的总结

一款手机应用  从开发过程中就要做好 性能优化,这样才能 让用户体验度 提升, 假如 我们打开一个应用 出现卡顿, 不流畅,则会很影响 用户对该应用的态度,产品狗 都很注意这些人机交互方面的 体验. 谷歌官方也是一直在优化 android 系统,不论是  碎片化处理 还是 系能 上面,这方面 ios 就做的比较好,配置比 android 低,但是流畅度却比android高,体验效果更好. 官方推荐方案:http://www.oschina.net/news/60157/android-perfo

java编程中的性能提升问题

java编程中的性能提升 软件产品犹如一栋大楼,大楼在建设初期,会有楼房规划,建筑构想,打牢地基,后面才是施工人员进行进行实质性的建设.要保证软件产品的高质量,优秀的架构,优秀的产品设计,是产生高质量的前提.同时,没有过硬的编码实现,一样得不到预期的效果.纵观现在的产品,产品架构没多大差别,基本运用基线版本进行局点定制.而系统中的一些功能性能常常不过关,问题往往就出在编码实现上.这块是开发人员在开发过程中需要注意的.在JAVA程序中,性能问题的大部分原因并不在于JAVA语言,而是程序本身.养成良

Java编程中提高性能的几点建议

尽量减少对变量的重复计算 如 for(int i=0;i<list.size();i++) 应该改为 for(int i=0,len=list.size();i<len;i++) 并且在循环中应该避免使用复杂的表达式,在循环中,循环条件会被反复计算,如果不使用复杂表达式,而使循环条件值不变的话,程序将会运行的更快. 尽量使用移位来代替'a/b'的操作 "/"是一个代价很高的操作,使用移位的操作将会更快和更有效 如 int num = a / 4; int num = a /

x86服务器中网络性能分析与调优 转

x86服务器中网络性能分析与调优 2017-04-05 巨枫 英特尔精英汇 [OpenStack 易经]是 EasyStack 官微在2017年新推出的技术品牌,将原创技术干货分享给您,本期我们讨论 [x86服务器中网络性能分析与调优] 那些事! >> 网络性能理论极限 网络数据包处理的性能指标,一般包括吞吐.延时.丢包率.抖动等. 数据包有大有小,数据包的大小对这些性能指标有很大的影响. 一般认为服务器处理能力很强,不是数据包处理的瓶颈,而通过物理线路能够传送数据包的最大速率,即线速(Wir

使用ThinkPHP开发中MySQL性能优化的最佳21条经验

使用ThinkPHP开发中MySQL性能优化的最佳21条经验讲解,目前,数据库的操作越来越成为整个应用的性能瓶颈了,这点对于Web应用尤其明显.关于数据库的性能,这并不只是DBA才需要担心的事,而这更是我 们程序员需要去关注的事情.当我们去设计数据库表结构,对操作数据库时(尤其是查表时的SQL语句),我们都需要注意数据操作的性能.这里,我们不会讲过 多的SQL语句的优化,而只是针对MySQL这一Web应用最多的数据库.希望下面的这些优化技巧对你有用. 1. 为查询缓存优化你的查询大多数的MySQ

通过Shunra&#160;VE&#160;SMB 测试系统(如视频监控、楼宇对讲、VOIP、IPTV等系统)在广域网中的性能

一.Shunra VE SMB简介 Shunra VE SMB Edition是一种专为中小规模企业设计的网络仿真软件产品,Shunra VE SMB Edition仿真软件可以用来测试,对比或预测在不同网络条件下-包括时延,抖动,丢包和带宽(最大10Mbps)-应用程序或设备的性能. 该软件可以用来测试视频监控.楼宇可视对讲.VOIP.IPTV等运行在网络中的性能.模拟一定延时.发生抖动.存在丢包率.限制带宽的情况下,系统的运行情况. 二.Shunra VE SMB安装环境简介 安装win20

在j2ee开发中影响性能的原因以及相关处理性的建议

java是现在比较流行的软件开发语言,同时也是互联网应用中安全性相对较高的一种开发语言了.被很多的电子金融系统开发企业以及电子商务网站建设企业所看重.虽然说在如今的互联网开发中,它比较有优势,然而用得不当的话,反而会使电子商务网站建设的性能受到影响.电子商务网站建设企业,就从多年的java商城开发中说说影响java商城系统和jsp商城效率的原因.    1.缺乏正确的容量规划    容量规划是一个全面的和发展的过程标准,预测当前和未来的IT环境容量需求.制定合理的容量规划不仅会确保和跟踪当前IT