NET网页编程之ASP.NET比拼PHP,谁是速率之王?
什么叫数据库怎么样?什么意思?你想单学数据库。(其实变成是我问的)方才在9月编程言语排行榜上获得汗青性冲破的PHP在Web开辟范畴最到的敌手大概就是基于微软.NET手艺的ASP.NET。克日,微软的JoeStagner在博客上宣布了一系列文章对照了PHP和ASP.NET功能方面的文章,引发了来自两边程序员的大批回应。Joe暗示,他会将如许的测试延续下往,并追求更加符合的体例,以取得对实践项目来讲尽量有参考代价的结论。Joe在博客中称,一样平常来讲,作功能测试的目标是要实验证实一方比令一方要快。我受雇于微软,同时编写PHP和ASP.NET代码。我在.NET呈现之前就在利用PHP,两个器材我都很喜好。
以是,我很难说出哪一个更好。当我说PHP坏话时,我的微软同事们会写信来品评我,而当我宣布偏向于ASP.NET的行动时,我的PHP伴侣们会说我是微软的托。
我举行这个测试是由于每一个人都对PHP的功能有本人的意见(Windowsvs.Linux&5.2vs.5.3),却没人能给出明白的数据。
ASP.NET比拼PHP的测试情况以下:
◆一切的测试都在统一台呆板上运转(具有4G内存和60G7200转硬盘的ToshibaTecraM5)。
◆Ubuntu9和WindowsServer2008尺度版分离安装于自力(但不异)的硬盘中。
◆Linux利用Apache2,Windows利用IIS7作为各自的Web服务器。
◆两边的操纵体系都举行了完全的patch或晋级。
◆两边的体系和运转时都没有举行分外的功能加强。
从实行了局上看,PHP在Linux和Windows的实行功能半斤八两:
◆地道的语句实行在Windows上体现更好。
◆函数挪用在Windows上更快。
◆工具的创立和会见,关于PHP5.2来讲在Linux上更快,可是关于PHP5.3来讲则是Windows更快。
◆类库挪用在Linux上快很多(如在Ubuntu长进行加密要比Windows要快3到5倍)。
Linux与Windows平台对照
在Linux上会见文件功能略高于Windows,不外Windows上文件复制的功能要比Linux慢60%,多是ACL初级平安的原因。
在Linux上会见MySQL要比Windows快很多,并且在Windows上运转PHP5.3的情形则更加卑劣(不外从上面PostgreSQL的情形下去看,这应当是糟完成的原因)。
PostgreSQL在两个平台上的功能十分靠近(1000个操纵的差异在0.06秒以内)——不管是PHP5.3仍是PHP5.2,Windows上体现都略胜一筹。
Windows上PHP5.2会见MSSQLServer的功能稍逊于在Linux上会见MySQL(此时还没有面向PHP5.3的SQLServer撑持)。
关于地道的PHP实行功能来讲,Linux和Windows相差无几,这不会成为选择Linux或Windows作为部署平台的决意性要素。假如你在构建一个使用程序,那末PostgreSQL多是更好的选择。由于它在两个平台上的体现都很优异。
假如你的使用程序必需利用MySQL,那末选择Windows就必要早些企图扩大性成绩了(团体以为Sun不太大概为Windows优化MySQL的功能)。
PHP的第一个版本的SQLServer驱动程序要比MySQL或PostpreSQL要慢一些,但这应当不会成为成绩。第二个版本的驱动器正在开辟当中,它会带来功能提拔。
在Joe看来,周全来看,PHP和IIS团队在实行功能上已做的十分乐成,接上去就必要各开源程序的团队(Drupal、WordPress、Joomla等等)为各平台举行功能优化了。
不外,除文件复制操纵以外,ASP.NET在功能方面周全抢先于PHP(不管部署在Linux仍是Windows下面):
Linux上会见MySQL的功能稍稍优于Windows上会见SQLServer的功能(利用一般的数据范例和SELECT语句)。可是这里的差异几近能够疏忽不计。
ASP.NET(C#)操纵,如工具利用,类库挪用等等,其功能都远高于PHP。关于这个测试了局,Joe增补道:
我晓得我的一些PHP伴侣和Linux伴计们要跳出来批驳我的测试和了局了。
我一向在思索,如许的功能对照是不是必要到场一些初级的优化选项。不外.NET方面也有比方多线程,异步哀求,和各类缓存体例可使用
请注重——我并没有说“ASP.NET更快,以是你不该该利用PHP!”,我利用以为,PHP过于复杂招致对某些初级使用来讲有些寸步难行,就像ASP.NET在项目初期会有进修方面的庞大性。
对我来讲,PHP最使人镇静的中央不是它的言语/平台,而是不计其数伶俐的PHP开辟职员,和各类优异的项目(如Drupal、Joomla、WordPress、PHPBB、Nuke等等)。
能够这么以为,PHP在Windows和Linux上的功能处于统一个程度上,我如今终究能够为Windows编写那些我企望着很多年的PHP类库了。
Joe还公然了测试代码。他暗示,假如你对这个测试的了局有疑义,能够亲身举行这个实行,或是编写你本人的测试代码举行实验。
文章公布以后,很多网友对这一测试了局宣布了意见。Joe基础上一一复兴了个中的次要概念:
“我利用ASP.NET只是由于我喜好VisualStudioIDE”——我团体以为VisualStudio是最有临盆力的开辟工具。可是,PHP的有不错的选择。我利用ZendStudio,PHPEd,Komodo,DelphiforPHP,这些都很不错。我厌恶Eclipse,不外Zend也在这方面为PHP开辟做了很多扩大。
应当对照ASP的功能——不必了,感谢。新式的ASP与今朝的PHP与ASP.NET差异太年夜了。做这类对照,仿佛是在倡议利用ASP开辟新项目,我激烈不倡议你这么做。
呵呵,那你就关注微软的招聘信息以及别人的招聘经验啊,还有也不一定去做技术的,你如果真的想去就多了解了解。(其实我的意思是说想到微软做技术是很不容易的。 虽然在形式上JSP和ASP或PHP看上去很相似——都可以被内嵌在HTML代码中。但是,它的执行方式和ASP或PHP完全不同。在JSP被执行的时候,JSP文件被JSP解释器(JSPParser)转换成Servlet代码,然后Servlet代码被Java编译器编译成.class字节文件,这样就由生成的Servlet来对客户端应答。所以,JSP可以看做是Servlet的脚本语言(ScriptLanguage)版。 代码逻辑混乱,难于管理:由于ASP是脚本语言混合html编程,所以你很难看清代码的逻辑关系,并且随着程序的复杂性增加,使得代码的管理十分困难,甚至超出一个程序员所能达到的管理能力,从而造成出错或这样那样的问题。 主流网站开发语言之PHP:PHP的全名非常有趣,它是一个巢状的缩写名称——“PHP:HypertextPreprocessor”,打开缩写还是缩写。PHP是一种HTML内嵌式的语言(就像上面讲的ASP那样)。而PHP独特的语法混合了C,Java,Perl以及PHP式的新语法。它可以比CGI或者Perl更快速地执行动态网页。 有一丝可惜的是,这个系列太强了,Java阵营的朋友根本就是哑口无言...争论之火瞬间被浇灭,这不是我想这么早就看到的,但是值了。 Asp.net脚本的出现,为ASP空间带来了更高的稳定性,同时也为程序员建站提供更高环境! 使用普通的文本编辑器编写,如记事本就可以完成。由脚本在服务器上而不是客户端运行,ASP所使用的脚本语言都在服务端上运行,用户端的浏览器不需要提供任何别的支持,这样大提高了用户与服务器之间的交互的速度。 平台无关性是PHP的最大优点,但是在优点的背后,还是有一些小小的缺点的。如果在PHP中不使用ODBC,而用其自带的数据库函数(这样的效率要比使用ODBC高)来连接数据库的话,使用不同的数据库,PHP的函数名不能统一。这样,使得程序的移植变得有些麻烦。不过,作为目前应用最为广泛的一种后台语言,PHP的优点还是异常明显的。 ASP(ActiveServerPages)是Microsfot公司1996年11月推出的WEB应用程序开发技术,它既不是一种程序语言,也不是一种开发工具,而是一种技术框架,不须使用微软的产品就能编写它的代码。
页:
[1]