ASP.NET和PHP性能对比整理和翻译(转)


原出处http://www.asp.net/Forums/ShowPost.aspx?tabindex=1&PostID=733

经过一些筛选,只选择一些代表性的看法和语句翻译, 翻译上用侯捷推荐的翻译方法.
对于英文不是太好的朋友比较有用,如果有翻译和知识点上的错误,请指出! :)

---------------- Your satisfaction is necessary to our success. Our goal is to provide you with the best level of customer service, and we welcome your comments and suggestions

Email:

Sales: sales@CuteSoft.Net

General: info@CuteSoft.Net

Support: support@CuteSoft.Net

Address:


CuteSoft
35 SHERWOOD CRES
BELLEVILLE, ON
K8P 5G2
Canada

-----------------------------------------------------------
首先, 排除偏激和未经测试的看法, 让我们来看看interscape和ttuttle怎么说

interscape(MVP) : PHP是一个脚本语言, 而ASP.NET是一个面向对象, 编译性的语言
.你不能让PHP在一个
WINDOWS程序中运行, 但是你可以拷贝ASP.NET的代码并把它放到WINFORM程序里面, 而
不用太大的修改. 但是
如果你要谈及所有情况下的性能, 也许PHP会好一些, 不过我会为WEB开发选择OOP(面向
对象编程)而不是step-thru
(顺序)脚本编程方式.

ttuttle: 我不想去做任何蛮横(outrageous)的声明, 但是让我们来看一下一些事实

--PHP已经被证明比ASP3.0稍微快一些
--ASP.NET比ASP3.0快3~5倍(一种类似于PHP的解析性脚本语言)(ttuttle这句出处
http://www.asp.net/whitepaper/whyaspnet.aspx)
--ASP.NET可以存放在缓存(Output Caching)中, 当页面第一次被访问和编译后, 它可
以从缓存中得到. 没有
任何页面处理器会比缓存更快.
--在默认安装下,ASP.NET是编译性语言的, 而PHP和ASP3.0则是解释性语言的.

======================================================================

面对这两种孑然不同的解释, 我再来看看ScottGu和 wysiwyg 还有 Xanderno怎么说

ScottGu(http://www.ASP.NET 版主):
ASP.NET是编译性质而不是解释性质的. 所以语句可以被转换为更快的执行时间.
而PHP方面也有ZEND在出售其收费的编译器ADD-ON.
然而, 我们已经看到Nile benchmark(阿冰语:一种测试的性能基准,可以参看其白皮书
http://www.gotdotnet.com/team/compare/Nile%20Benchmark%20Results.doc)中,
ASP.NET和SQL 比PHP和MYSQL快 2~3倍, 而近乎5倍速度快于PHP和ORACLE(即便当ZEND编
译器和缓存器已经安装)

wysiwyg:
虽然这个主题是ASP.NET VS PHP, 但是我来说一下我测试的事实却是 ASP要稍快于
ASP.NET
在ASP中, 这段代码用了2秒
..................
....store order info in myRS.....
....store customer info in myTable.....
...................
Do while not myRS.eof
myTable.open "select customername from tblCustomer where customerID=" &
myRS.fields("CustomerID"), myConnection
myArray(0,ubound(myArray,2))=myRS.fields("Ordernumber")
myArray(1,Ubound(myArray,2))=myRS.fields("OrderDate")
myArray(2,Ubound(myArray,2))=myTable.fields("CustomerName")
myTable.close
myRS.movenext
loop

ASP.NET用了40秒
trace.warn("open conn: " & now)
..................
....store order info in datatable myDataTable.....
....store customer info in datatable myCustomer.....
...................
myDataView=new DataView(myCustomer)
for each myRow in myDataTable.rows
myDataview.rowFilter="CustomerID=" & myRow("CustomerID")
myRow("CustomerName")=myDataview(0).row("Customername")
next
trace.warn("finish looping: " & now)
我很希望自己的结果是ASP.NET快于ASP, 但是确相反, 谁能告诉我为什么??

(阿冰语: 此人认为他自己做是测试,但是没有说明计算机和操作系统和测试环境的详细
情况,
也没说明是否属于哪一级别的压力测试)
------------
Xanderno:
在我的不完善的测试中, 采用ACT 作为一种方法. 在一台配置低机器上面, 用ASP通过
一个SQL SERVER数据库
每秒种我可以获得10~15页数据 . 同样的函数, 用ASP.NET, 每秒种我却可以获得30~40
页数据, 使用输出缓存后(output caching)
它上升为120页/每秒.

微软提供一系列压力测试工具. VS.NET企业版便有ACT, 如果你没有VS企业版, WACT也
是一种可行的方法
.WAST website:http://webtool.rte.microsoft.com/

===========================================================================­=
==================

从以上三人的看法, 也许大家已经得出较为正确的答案. 然而这些并不是第一次对
ASP.NET和PHP 的讨论
其他讨论, 还可以参看Debate - .NET V. PHP: Top 6 Reasons to Use
.NET(http://www.sitepoint.com/article/871 )
还有Top 10 .NET Myths Exposed(http://www.webmasterbase.com/article/870);

当然你有时间, 还可以看看由Owendo Technology做的Web Application Server
Panorama(Web 应用程序服务器全景)报告
.这是一篇长达279页的报告
(http://e-serv.ebizq.net/shared/goldclub.jsp?owendo_1b.html ).

此外,还有人问了这样一个问题"VB.NET和C#哪个更快?"

Daniel P. 这样回答: 他们并没有区别, VB.NET和C#都是转换成 IL-Code(中间语言代
码)---用来编译主程序的.

最后, 也许大家总是觉得程序员之间这种讨论看起来很搞笑, 很多人总是带有主观性进
行讨论, 连一些编程大师级的老外也像小孩子
一样在争论. 但是没有自己所爱的语言, 没有这种狂热又怎会有技术的进步.
(呵呵,在下以前就是做php的通用模块开发, 类www.xoops.org那种, 现在改为.net, 不
过还是很喜欢php这种轻松不严谨的脚本)

--
=====================
找了一个月工作,阿冰终于回归了^_^|||

劣者是SMIS.NET项目组成员,
也是微软中文新闻组ASP.NET的版主,
高手请到版上指教,新手请来版上聚聚,
大家一起提高ASP.NET版人气.(microsoft.public.cn.dotnet.framework.aspnet)

狠下心,把华为给拒了
等不到网易,去了深圳APPENON,以后回厦门只要坐半天的车
=============================

回复 为此帖评分:


发件人: Halley- 查看个人资料
日期: 2003年12月27日(星期六) 上午10时27分
电子邮件: "Halley" <z...@tom.com>
论坛: microsoft.public.cn.dotnet.framework.aspnet, microsoft.public.cn.dotnet.languages.csharp
尚未评分 评级:
显示选项
回复 | 答复作者 | 转发 | 打印 | 显示个别帖子 | 显示原始邮件 | 报告滥用行为 | 查找此作者的帖子

php的简单和快速(程序编制方面)是其他语言无法比的,而5.0对“对象”的诠释也更
彻底了
"阿冰" <webmas...@coolpili.com> 写入邮件
news:%236WHeJ$yDHA.832@TK2MSFTNGP09.phx.gbl...


发件人: 秋水艳阳天- 查看个人资料
日期: 2003年12月27日(星期六) 上午11时31分
电子邮件: "秋水艳阳天" <Artilkilleronl...@hotmail.com>
论坛: microsoft.public.cn.dotnet.framework.aspnet, microsoft.public.cn.dotnet.languages.csharp
尚未评分 评级:
显示选项
回复 | 答复作者 | 转发 | 打印 | 显示个别帖子 | 显示原始邮件 | 报告滥用行为 | 查找此作者的帖子

"此外,还有人问了这样一个问题"VB.NET和C#哪个更快?"

Daniel P. 这样回答: 他们并没有区别, VB.NET和C#都是转换成 IL-Code(中间语言代
码)---用来编译主程序的."

It is not exactly correct. In fact, they have different compilers. That is to say, same code of vb.net and C# may be compiled to different IL-Code. So their effieiency is not exactly same.

--
宠辱不惊,看花开花落
去留无意,任云卷云舒

"阿冰" <webmas...@coolpili.com> wrote in message news:#UeFIF$yDHA.604@tk2msftngp13.phx.gbl...
原出处http://www.asp.net/Forums/ShowPost.aspx?tabindex=1&PostID=733

经过一些筛选,只选择一些代表性的看法和语句翻译, 翻译上用侯捷推荐的翻译方法.
对于英文不是太好的朋友比较有用,如果有翻译和知识点上的错误,请指出! :)

---------------------------------------------------------------------------
首先, 排除偏激和未经测试的看法, 让我们来看看interscape和ttuttle怎么说

interscape(MVP) : PHP是一个脚本语言, 而ASP.NET是一个面向对象, 编译性的语言
.你不能让PHP在一个
WINDOWS程序中运行, 但是你可以拷贝ASP.NET的代码并把它放到WINFORM程序里面, 而
不用太大的修改. 但是
如果你要谈及所有情况下的性能, 也许PHP会好一些, 不过我会为WEB开发选择OOP(面向
对象编程)而不是step-thru
(顺序)脚本编程方式.

ttuttle: 我不想去做任何蛮横(outrageous)的声明, 但是让我们来看一下一些事实

--PHP已经被证明比ASP3.0稍微快一些
--ASP.NET比ASP3.0快3~5倍(一种类似于PHP的解析性脚本语言)(ttuttle这句出处
http://www.asp.net/whitepaper/whyaspnet.aspx)
--ASP.NET可以存放在缓存(Output Caching)中, 当页面第一次被访问和编译后, 它可
以从缓存中得到. 没有
任何页面处理器会比缓存更快.
--在默认安装下,ASP.NET是编译性语言的, 而PHP和ASP3.0则是解释性语言的.

======================================================================

面对这两种孑然不同的解释, 我再来看看ScottGu和 wysiwyg 还有 Xanderno怎么说

ScottGu(http://www.ASP.NET 版主):
ASP.NET是编译性质而不是解释性质的. 所以语句可以被转换为更快的执行时间.
而PHP方面也有ZEND在出售其收费的编译器ADD-ON.
然而, 我们已经看到Nile benchmark(阿冰语:一种测试的性能基准,可以参看其白皮书
http://www.gotdotnet.com/team/compare/Nile%20Benchmark%20Results.doc)中,
ASP.NET和SQL 比PHP和MYSQL快 2~3倍, 而近乎5倍速度快于PHP和ORACLE(即便当ZEND编
译器和缓存器已经安装)

wysiwyg:
虽然这个主题是ASP.NET VS PHP, 但是我来说一下我测试的事实却是 ASP要稍快于
ASP.NET
在ASP中, 这段代码用了2秒
..................
....store order info in myRS.....
....store customer info in myTable.....
...................
Do while not myRS.eof
myTable.open "select customername from tblCustomer where customerID=" &
myRS.fields("CustomerID"), myConnection
myArray(0,ubound(myArray,2))=myRS.fields("Ordernumber")
myArray(1,Ubound(myArray,2))=myRS.fields("OrderDate")
myArray(2,Ubound(myArray,2))=myTable.fields("CustomerName")
myTable.close
myRS.movenext
loop

而ASP.NET用了40秒
trace.warn("open conn: " & now)
..................
....store order info in datatable myDataTable.....
....store customer info in datatable myCustomer.....
...................
myDataView=new DataView(myCustomer)
for each myRow in myDataTable.rows
myDataview.rowFilter="CustomerID=" & myRow("CustomerID")
myRow("CustomerName")=myDataview(0).row("Customername")
next
trace.warn("finish looping: " & now)
我很希望自己的结果是ASP.NET快于ASP, 但是确相反, 谁能告诉我为什么??

(阿冰语: 此人认为他自己做是测试,但是没有说明计算机和操作系统和测试环境的详细
情况,
也没说明是否属于哪一级别的压力测试)
------------
Xanderno:
在我的不完善的测试中, 采用ACT 作为一种方法. 在一台配置低机器上面, 用ASP通过
一个SQL SERVER数据库
每秒种我可以获得10~15页数据 . 同样的函数, 用ASP.NET, 每秒种我却可以获得30~40
页数据, 使用输出缓存后(output caching)
它上升为120页/每秒.

微软提供一系列压力测试工具. VS.NET企业版便有ACT, 如果你没有VS企业版, WACT也
是一种可行的方法
.WAST website:http://webtool.rte.microsoft.com/

===========================================================================­=
==================

从以上三人的看法, 也许大家已经得出较为正确的答案. 然而这些并不是第一次对
ASP.NET和PHP 的讨论
其他讨论, 还可以参看Debate - .NET V. PHP: Top 6 Reasons to Use
.NET(http://www.sitepoint.com/article/871 )
还有Top 10 .NET Myths Exposed(http://www.webmasterbase.com/article/870);

当然你有时间, 还可以看看由Owendo Technology做的Web Application Server
Panorama(Web 应用程序服务器全景)报告
.这是一篇长达279页的报告
(http://e-serv.ebizq.net/shared/goldclub.jsp?owendo_1b.html ).

此外,还有人问了这样一个问题"VB.NET和C#哪个更快?"

Daniel P. 这样回答: 他们并没有区别, VB.NET和C#都是转换成 IL-Code(中间语言代
码)---用来编译主程序的.

最后, 也许大家总是觉得程序员之间这种讨论看起来很搞笑, 很多人总是带有主观性进
行讨论, 连一些编程大师级的老外也像小孩子
一样在争论. 但是没有自己所爱的语言, 没有这种狂热又怎会有技术的进步.
(呵呵,在下以前就是做php的通用模块开发, 类www.xoops.org那种, 现在改为.net, 不
过还是很喜欢php这种轻松不严谨的脚本)

--
=====================
找了一个月工作,阿冰终于回归了^_^|||

劣者是SMIS.NET项目组成员,
也是微软中文新闻组ASP.NET的版主,
高手请到版上指教,新手请来版上聚聚,
大家一起提高ASP.NET版人气.(microsoft.public.cn.dotnet.framework.aspnet)

狠下心,把华为给拒了
等不到网易,去了深圳APPENON,以后回厦门只要坐半天的车
=============================

回复 为此帖评分:


发件人: ceocio(MS MVP)(西南交大|刘巍)- 查看个人资料
日期: 2003年12月27日(星期六) 下午3时42分
电子邮件: "ceocio(MS MVP)(西南交大|刘巍)" <supp...@ceocio.net>
论坛: microsoft.public.cn.dotnet.framework.aspnet, microsoft.public.cn.dotnet.languages.csharp
尚未评分 评级:
显示选项
回复 | 答复作者 | 转发 | 打印 | 显示个别帖子 | 显示原始邮件 | 报告滥用行为 | 查找此作者的帖子

感谢楼主,英语不好的同志们有福了!

--
-------------------------
微软最有价值专家
.Net/IIS/ASP/Windows
-------------------------
"阿冰" <webmas...@coolpili.com> 写入消息
news:#UeFIF$yDHA.604@tk2msftngp13.phx.gbl...


发件人: 阿冰- 查看个人资料
日期: 2003年12月27日(星期六) 下午6时40分
电子邮件: "阿冰" <webmas...@coolpili.com>
论坛: microsoft.public.cn.dotnet.framework.aspnet, microsoft.public.cn.dotnet.languages.csharp
尚未评分 评级:
显示选项
回复 | 答复作者 | 转发 | 打印 | 显示个别帖子 | 显示原始邮件 | 报告滥用行为 | 查找此作者的帖子

其实PHP本来就有面向对象的诠释, 只是多态性和虚构方面一直没有较好的实现

--
=====================
找了一个月工作,阿冰终于回归了^_^|||

劣者是SMIS.NET项目组成员,
也是微软中文新闻组ASP.NET的版主,
高手请到版上指教,新手请来版上聚聚,
大家一起提高ASP.NET版人气.(microsoft.public.cn.dotnet.framework.aspnet)

狠下心,把华为给拒了
等不到网易,去了深圳APPENON,以后回厦门只要坐半天的车
=============================
"Halley" <z...@tom.com> 写入消息新闻
:#Fb7oDCzDHA.2...@TK2MSFTNGP09.phx.gbl...


发件人: 阿冰- 查看个人资料
日期: 2003年12月27日(星期六) 下午6时43分
电子邮件: "阿冰" <webmas...@coolpili.com>
论坛: microsoft.public.cn.dotnet.framework.aspnet, microsoft.public.cn.dotnet.languages.csharp
尚未评分 评级:
显示选项
回复 | 答复作者 | 转发 | 打印 | 显示个别帖子 | 显示原始邮件 | 报告滥用行为 | 查找此作者的帖子

我也是这么认为, 不过没经过压力测试, 我也不好作出评价, 不过还是觉得C#会快一些

--
=====================
找了一个月工作,阿冰终于回归了^_^|||

劣者是SMIS.NET项目组成员,
也是微软中文新闻组ASP.NET的版主,
高手请到版上指教,新手请来版上聚聚,
大家一起提高ASP.NET版人气.(microsoft.public.cn.dotnet.framework.aspnet)

狠下心,把华为给拒了
等不到网易,去了深圳APPENON,以后回厦门只要坐半天的车
=============================
"秋水艳阳天" <Artilkilleronl...@hotmail.com> 写入消息新闻
:#9EnenCzDHA.3...@tk2msftngp13.phx.gbl...
"此外,还有人问了这样一个问题"VB.NET和C#哪个更快?"

Daniel P. 这样回答: 他们并没有区别, VB.NET和C#都是转换成 IL-Code(中间语言代
码)---用来编译主程序的."

It is not exactly correct. In fact, they have different compilers. That is
to say, same code of vb.net and C# may be compiled to different IL-Code. So
their effieiency is not exactly same.

--
宠辱不惊,看花开花落
去留无意,任云卷云舒

"阿冰" <webmas...@coolpili.com> wrote in message

news:#UeFIF$yDHA.604@tk2msftngp13.phx.gbl...
原出处http://www.asp.net/Forums/ShowPost.aspx?tabindex=1&PostID=733

经过一些筛选,只选择一些代表性的看法和语句翻译, 翻译上用侯捷推荐的翻译方法.
对于英文不是太好的朋友比较有用,如果有翻译和知识点上的错误,请指出! :)

---------------------------------------------------------------------------
首先, 排除偏激和未经测试的看法, 让我们来看看interscape和ttuttle怎么说

interscape(MVP) : PHP是一个脚本语言, 而ASP.NET是一个面向对象, 编译性的语言
.你不能让PHP在一个
WINDOWS程序中运行, 但是你可以拷贝ASP.NET的代码并把它放到WINFORM程序里面, 而
不用太大的修改. 但是
如果你要谈及所有情况下的性能, 也许PHP会好一些, 不过我会为WEB开发选择OOP(面向
对象编程)而不是step-thru
(顺序)脚本编程方式.

ttuttle: 我不想去做任何蛮横(outrageous)的声明, 但是让我们来看一下一些事实

--PHP已经被证明比ASP3.0稍微快一些
--ASP.NET比ASP3.0快3~5倍(一种类似于PHP的解析性脚本语言)(ttuttle这句出处
http://www.asp.net/whitepaper/whyaspnet.aspx)
--ASP.NET可以存放在缓存(Output Caching)中, 当页面第一次被访问和编译后, 它可
以从缓存中得到. 没有
任何页面处理器会比缓存更快.
--在默认安装下,ASP.NET是编译性语言的, 而PHP和ASP3.0则是解释性语言的.

======================================================================

面对这两种孑然不同的解释, 我再来看看ScottGu和 wysiwyg 还有 Xanderno怎么说

ScottGu(http://www.ASP.NET 版主):
ASP.NET是编译性质而不是解释性质的. 所以语句可以被转换为更快的执行时间.
而PHP方面也有ZEND在出售其收费的编译器ADD-ON.
然而, 我们已经看到Nile benchmark(阿冰语:一种测试的性能基准,可以参看其白皮书
http://www.gotdotnet.com/team/compare/Nile%20Benchmark%20Results.doc)中,
ASP.NET和SQL 比PHP和MYSQL快 2~3倍, 而近乎5倍速度快于PHP和ORACLE(即便当ZEND编
译器和缓存器已经安装)

wysiwyg:
虽然这个主题是ASP.NET VS PHP, 但是我来说一下我测试的事实却是 ASP要稍快于
ASP.NET
在ASP中, 这段代码用了2秒
..................
....store order info in myRS.....
....store customer info in myTable.....
...................
Do while not myRS.eof
myTable.open "select customername from tblCustomer where customerID=" &
myRS.fields("CustomerID"), myConnection
myArray(0,ubound(myArray,2))=myRS.fields("Ordernumber")
myArray(1,Ubound(myArray,2))=myRS.fields("OrderDate")
myArray(2,Ubound(myArray,2))=myTable.fields("CustomerName")
myTable.close
myRS.movenext
loop

ASP.NET用了40秒
trace.warn("open conn: " & now)
..................
....store order info in datatable myDataTable.....
....store customer info in datatable myCustomer.....
...................
myDataView=new DataView(myCustomer)
for each myRow in myDataTable.rows
myDataview.rowFilter="CustomerID=" & myRow("CustomerID")
myRow("CustomerName")=myDataview(0).row("Customername")
next
trace.warn("finish looping: " & now)
我很希望自己的结果是ASP.NET快于ASP, 但是确相反, 谁能告诉我为什么??

(阿冰语: 此人认为他自己做是测试,但是没有说明计算机和操作系统和测试环境的详细
情况,
也没说明是否属于哪一级别的压力测试)
------------
Xanderno:
在我的不完善的测试中, 采用ACT 作为一种方法. 在一台配置低机器上面, 用ASP通过
一个SQL SERVER数据库
每秒种我可以获得10~15页数据 . 同样的函数, 用ASP.NET, 每秒种我却可以获得30~40
页数据, 使用输出缓存后(output caching)
它上升为120页/每秒.

微软提供一系列压力测试工具. VS.NET企业版便有ACT, 如果你没有VS企业版, WACT也
是一种可行的方法
.WAST website:http://webtool.rte.microsoft.com/

===========================================================================­=
==================

从以上三人的看法, 也许大家已经得出较为正确的答案. 然而这些并不是第一次对
ASP.NET和PHP 的讨论
其他讨论, 还可以参看Debate - .NET V. PHP: Top 6 Reasons to Use
.NET(http://www.sitepoint.com/article/871 )
还有Top 10 .NET Myths Exposed(http://www.webmasterbase.com/article/870);

当然你有时间, 还可以看看由Owendo Technology做的Web Application Server
Panorama(Web 应用程序服务器全景)报告
.这是一篇长达279页的报告
(http://e-serv.ebizq.net/shared/goldclub.jsp?owendo_1b.html ).

此外,还有人问了这样一个问题"VB.NET和C#哪个更快?"

Daniel P. 这样回答: 他们并没有区别, VB.NET和C#都是转换成 IL-Code(中间语言代
码)---用来编译主程序的.

最后, 也许大家总是觉得程序员之间这种讨论看起来很搞笑, 很多人总是带有主观性进
行讨论, 连一些编程大师级的老外也像小孩子
一样在争论. 但是没有自己所爱的语言, 没有这种狂热又怎会有技术的进步.
(呵呵,在下以前就是做php的通用模块开发, 类www.xoops.org那种, 现在改为.net, 不
过还是很喜欢php这种轻松不严谨的脚本)

--
=====================
找了一个月工作,阿冰终于回归了^_^|||

劣者是SMIS.NET项目组成员,
也是微软中文新闻组ASP.NET的版主,
高手请到版上指教,新手请来版上聚聚,
大家一起提高ASP.NET版人气.(microsoft.public.cn.dotnet.framework.aspnet)

狠下心,把华为给拒了
等不到网易,去了深圳APPENON,以后回厦门只要坐半天的车
=============================

回复 为此帖评分:


发件人: hzy- 查看个人资料
日期: 2003年12月27日(星期六) 下午8时52分
电子邮件: "hzy" <h...@open.ha.cn.discuss>
论坛: microsoft.public.cn.dotnet.framework.aspnet, microsoft.public.cn.dotnet.languages.csharp
尚未评分 评级:
显示选项

发件人: 楚狐- 查看个人资料
日期: 2003年12月28日(星期日) 下午5时07分
电子邮件: "楚狐" <skypi...@hotmail.com.discuss>
论坛: microsoft.public.cn.dotnet.framework.aspnet, microsoft.public.cn.dotnet.languages.csharp
尚未评分 评级:
显示选项
回复 | 答复作者 | 转发 | 打印 | 显示个别帖子 | 显示原始邮件 | 报告滥用行为 | 查找此作者的帖子

嗯,不错!我只会php不会asp,但是现在再学习asp.net的。
"阿冰" <webmas...@coolpili.com> 写入消息 news:#UeFIF$yDHA.604@tk2msftngp13.phx.gbl...
原出处http://www.asp.net/Forums/ShowPost.aspx?tabindex=1&PostID=733

经过一些筛选,只选择一些代表性的看法和语句翻译, 翻译上用侯捷推荐的翻译方法.
对于英文不是太好的朋友比较有用,如果有翻译和知识点上的错误,请指出! :)

---------------------------------------------------------------------------
首先, 排除偏激和未经测试的看法, 让我们来看看interscape和ttuttle怎么说

interscape(MVP) : PHP是一个脚本语言, 而ASP.NET是一个面向对象, 编译性的语言
.你不能让PHP在一个
WINDOWS程序中运行, 但是你可以拷贝ASP.NET的代码并把它放到WINFORM程序里面, 而
不用太大的修改. 但是
如果你要谈及所有情况下的性能, 也许PHP会好一些, 不过我会为WEB开发选择OOP(面向
对象编程)而不是step-thru
(顺序)脚本编程方式.

ttuttle: 我不想去做任何蛮横(outrageous)的声明, 但是让我们来看一下一些事实

--PHP已经被证明比ASP3.0稍微快一些
--ASP.NET比ASP3.0快3~5倍(一种类似于PHP的解析性脚本语言)(ttuttle这句出处
http://www.asp.net/whitepaper/whyaspnet.aspx)
--ASP.NET可以存放在缓存(Output Caching)中, 当页面第一次被访问和编译后, 它可
以从缓存中得到. 没有
任何页面处理器会比缓存更快.
--在默认安装下,ASP.NET是编译性语言的, 而PHP和ASP3.0则是解释性语言的.

======================================================================

面对这两种孑然不同的解释, 我再来看看ScottGu和 wysiwyg 还有 Xanderno怎么说

ScottGu(http://www.ASP.NET 版主):
ASP.NET是编译性质而不是解释性质的. 所以语句可以被转换为更快的执行时间.
而PHP方面也有ZEND在出售其收费的编译器ADD-ON.
然而, 我们已经看到Nile benchmark(阿冰语:一种测试的性能基准,可以参看其白皮书
http://www.gotdotnet.com/team/compare/Nile%20Benchmark%20Results.doc)中,
ASP.NET和SQL 比PHP和MYSQL快 2~3倍, 而近乎5倍速度快于PHP和ORACLE(即便当ZEND编
译器和缓存器已经安装)

wysiwyg:
虽然这个主题是ASP.NET VS PHP, 但是我来说一下我测试的事实却是 ASP要稍快于
ASP.NET
在ASP中, 这段代码用了2秒
..................
....store order info in myRS.....
....store customer info in myTable.....
...................
Do while not myRS.eof
myTable.open "select customername from tblCustomer where customerID=" &
myRS.fields("CustomerID"), myConnection
myArray(0,ubound(myArray,2))=myRS.fields("Ordernumber")
myArray(1,Ubound(myArray,2))=myRS.fields("OrderDate")
myArray(2,Ubound(myArray,2))=myTable.fields("CustomerName")
myTable.close
myRS.movenext
loop

而ASP.NET用了40秒
trace.warn("open conn: " & now)
..................
....store order info in datatable myDataTable.....
....store customer info in datatable myCustomer.....
...................
myDataView=new DataView(myCustomer)
for each myRow in myDataTable.rows
myDataview.rowFilter="CustomerID=" & myRow("CustomerID")
myRow("CustomerName")=myDataview(0).row("Customername")
next
trace.warn("finish looping: " & now)
我很希望自己的结果是ASP.NET快于ASP, 但是确相反, 谁能告诉我为什么??

(阿冰语: 此人认为他自己做是测试,但是没有说明计算机和操作系统和测试环境的详细
情况,
也没说明是否属于哪一级别的压力测试)
------------
Xanderno:
在我的不完善的测试中, 采用ACT 作为一种方法. 在一台配置低机器上面, 用ASP通过
一个SQL SERVER数据库
每秒种我可以获得10~15页数据 . 同样的函数, 用ASP.NET, 每秒种我却可以获得30~40
页数据, 使用输出缓存后(output caching)
它上升为120页/每秒.

微软提供一系列压力测试工具. VS.NET企业版便有ACT, 如果你没有VS企业版, WACT也
是一种可行的方法
.WAST website:http://webtool.rte.microsoft.com/

===========================================================================­=
==================

从以上三人的看法, 也许大家已经得出较为正确的答案. 然而这些并不是第一次对
ASP.NET和PHP 的讨论
其他讨论, 还可以参看Debate - .NET V. PHP: Top 6 Reasons to Use
.NET(http://www.sitepoint.com/article/871 )
还有Top 10 .NET Myths Exposed(http://www.webmasterbase.com/article/870);

当然你有时间, 还可以看看由Owendo Technology做的Web Application Server
Panorama(Web 应用程序服务器全景)报告
.这是一篇长达279页的报告
(http://e-serv.ebizq.net/shared/goldclub.jsp?owendo_1b.html ).

此外,还有人问了这样一个问题"VB.NET和C#哪个更快?"

Daniel P. 这样回答: 他们并没有区别, VB.NET和C#都是转换成 IL-Code(中间语言代
码)---用来编译主程序的.

最后, 也许大家总是觉得程序员之间这种讨论看起来很搞笑, 很多人总是带有主观性进
行讨论, 连一些编程大师级的老外也像小孩子
一样在争论. 但是没有自己所爱的语言, 没有这种狂热又怎会有技术的进步.
(呵呵,在下以前就是做php的通用模块开发, 类www.xoops.org那种, 现在改为.net, 不
过还是很喜欢php这种轻松不严谨的脚本)

--
=====================
找了一个月工作,阿冰终于回归了^_^|||

劣者是SMIS.NET项目组成员,
也是微软中文新闻组ASP.NET的版主,
高手请到版上指教,新手请来版上聚聚,
大家一起提高ASP.NET版人气.(microsoft.public.cn.dotnet.framework.aspnet)

狠下心,把华为给拒了
等不到网易,去了深圳APPENON,以后回厦门只要坐半天的车
=============================

回复 为此帖评分:


发件人: ylcomrade- 查看个人资料
日期: 2003年12月29日(星期一) 上午9时41分
电子邮件: "ylcomrade" <ylcomr...@hotmail.com>
论坛: microsoft.public.cn.dotnet.framework.aspnet, microsoft.public.cn.dotnet.languages.csharp
尚未评分 评级:
显示选项
回复 | 答复作者 | 转发 | 打印 | 显示个别帖子 | 显示原始邮件 | 报告滥用行为 | 查找此作者的帖子

我觉得这种可比性太小了,面对的用户不一样
"阿冰" <webmas...@coolpili.com> 写入邮件
news:%23UeFIF$yDHA.604@tk2msftngp13.phx.gbl...


发件人: hubo- 查看个人资料
日期: 2003年12月29日(星期一) 下午6时06分
电子邮件: "hubo" <hubo...@hotmail.com>
论坛: microsoft.public.cn.dotnet.framework.aspnet, microsoft.public.cn.dotnet.languages.csharp
尚未评分 评级:
显示选项
回复 | 答复作者 | 转发 | 打印 | 显示个别帖子 | 显示原始邮件 | 报告滥用行为 | 查找此作者的帖子

事实上C#和VB.NET从语句结构上非常象,而且,它们共用同样的函数库。所以对相同的问题产生的中间代码也是一样的。当然,不排除某个人因为熟悉某一语言而­写出更精练的程序,但原则上来讲,这种精练也可以移植到另一个语言。
"秋水艳阳天" <Artilkilleronl...@hotmail.com> schrieb im Newsbeitrag news:#9EnenCzDHA.3208@tk2msftngp13.phx.gbl...
"此外,还有人问了这样一个问题"VB.NET和C#哪个更快?"

Daniel P. 这样回答: 他们并没有区别, VB.NET和C#都是转换成 IL-Code(中间语言代
码)---用来编译主程序的."

It is not exactly correct. In fact, they have different compilers. That is to say, same code of vb.net and C# may be compiled to different IL-Code. So their effieiency is not exactly same.

--
宠辱不惊,看花开花落
去留无意,任云卷云舒

"阿冰" <webmas...@coolpili.com> wrote in message news:#UeFIF$yDHA.604@tk2msftngp13.phx.gbl...
原出处http://www.asp.net/Forums/ShowPost.aspx?tabindex=1&PostID=733

经过一些筛选,只选择一些代表性的看法和语句翻译, 翻译上用侯捷推荐的翻译方法.
对于英文不是太好的朋友比较有用,如果有翻译和知识点上的错误,请指出! :)

---------------------------------------------------------------------------
首先, 排除偏激和未经测试的看法, 让我们来看看interscape和ttuttle怎么说

interscape(MVP) : PHP是一个脚本语言, 而ASP.NET是一个面向对象, 编译性的语言
.你不能让PHP在一个
WINDOWS程序中运行, 但是你可以拷贝ASP.NET的代码并把它放到WINFORM程序里面, 而
不用太大的修改. 但是
如果你要谈及所有情况下的性能, 也许PHP会好一些, 不过我会为WEB开发选择OOP(面向
对象编程)而不是step-thru
(顺序)脚本编程方式.

ttuttle: 我不想去做任何蛮横(outrageous)的声明, 但是让我们来看一下一些事实

--PHP已经被证明比ASP3.0稍微快一些
--ASP.NET比ASP3.0快3~5倍(一种类似于PHP的解析性脚本语言)(ttuttle这句出处
http://www.asp.net/whitepaper/whyaspnet.aspx)
--ASP.NET可以存放在缓存(Output Caching)中, 当页面第一次被访问和编译后, 它可
以从缓存中得到. 没有
任何页面处理器会比缓存更快.
--在默认安装下,ASP.NET是编译性语言的, 而PHP和ASP3.0则是解释性语言的.

======================================================================

面对这两种孑然不同的解释, 我再来看看ScottGu和 wysiwyg 还有 Xanderno怎么说

ScottGu(http://www.ASP.NET 版主):
ASP.NET是编译性质而不是解释性质的. 所以语句可以被转换为更快的执行时间.
而PHP方面也有ZEND在出售其收费的编译器ADD-ON.
然而, 我们已经看到Nile benchmark(阿冰语:一种测试的性能基准,可以参看其白皮书
http://www.gotdotnet.com/team/compare/Nile%20Benchmark%20Results.doc)中,
ASP.NET和SQL 比PHP和MYSQL快 2~3倍, 而近乎5倍速度快于PHP和ORACLE(即便当ZEND编
译器和缓存器已经安装)

wysiwyg:
虽然这个主题是ASP.NET VS PHP, 但是我来说一下我测试的事实却是 ASP要稍快于
ASP.NET
在ASP中, 这段代码用了2秒
..................
....store order info in myRS.....
....store customer info in myTable.....
...................
Do while not myRS.eof
myTable.open "select customername from tblCustomer where customerID=" &
myRS.fields("CustomerID"), myConnection
myArray(0,ubound(myArray,2))=myRS.fields("Ordernumber")
myArray(1,Ubound(myArray,2))=myRS.fields("OrderDate")
myArray(2,Ubound(myArray,2))=myTable.fields("CustomerName")
myTable.close
myRS.movenext
loop

而ASP.NET用了40秒
trace.warn("open conn: " & now)
..................
....store order info in datatable myDataTable.....
....store customer info in datatable myCustomer.....
...................
myDataView=new DataView(myCustomer)
for each myRow in myDataTable.rows
myDataview.rowFilter="CustomerID=" & myRow("CustomerID")
myRow("CustomerName")=myDataview(0).row("Customername")
next
trace.warn("finish looping: " & now)
我很希望自己的结果是ASP.NET快于ASP, 但是确相反, 谁能告诉我为什么??

(阿冰语: 此人认为他自己做是测试,但是没有说明计算机和操作系统和测试环境的详细
情况,
也没说明是否属于哪一级别的压力测试)
------------
Xanderno:
在我的不完善的测试中, 采用ACT 作为一种方法. 在一台配置低机器上面, 用ASP通过
一个SQL SERVER数据库
每秒种我可以获得10~15页数据 . 同样的函数, 用ASP.NET, 每秒种我却可以获得30~40
页数据, 使用输出缓存后(output caching)
它上升为120页/每秒.

微软提供一系列压力测试工具. VS.NET企业版便有ACT, 如果你没有VS企业版, WACT也
是一种可行的方法
.WAST website:http://webtool.rte.microsoft.com/

===========================================================================­=
==================

从以上三人的看法, 也许大家已经得出较为正确的答案. 然而这些并不是第一次对
ASP.NET和PHP 的讨论
其他讨论, 还可以参看Debate - .NET V. PHP: Top 6 Reasons to Use
.NET(http://www.sitepoint.com/article/871 )
还有Top 10 .NET Myths Exposed(http://www.webmasterbase.com/article/870);

当然你有时间, 还可以看看由Owendo Technology做的Web Application Server
Panorama(Web 应用程序服务器全景)报告
.这是一篇长达279页的报告
(http://e-serv.ebizq.net/shared/goldclub.jsp?owendo_1b.html ).

此外,还有人问了这样一个问题"VB.NET和C#哪个更快?"

Daniel P. 这样回答: 他们并没有区别, VB.NET和C#都是转换成 IL-Code(中间语言代
码)---用来编译主程序的.

最后, 也许大家总是觉得程序员之间这种讨论看起来很搞笑, 很多人总是带有主观性进
行讨论, 连一些编程大师级的老外也像小孩子
一样在争论. 但是没有自己所爱的语言, 没有这种狂热又怎会有技术的进步.
(呵呵,在下以前就是做php的通用模块开发, 类www.xoops.org那种, 现在改为.net, 不
过还是很喜欢php这种轻松不严谨的脚本)

--
=====================
找了一个月工作,阿冰终于回归了^_^|||

劣者是SMIS.NET项目组成员,
也是微软中文新闻组ASP.NET的版主,
高手请到版上指教,新手请来版上聚聚,
大家一起提高ASP.NET版人气.(microsoft.public.cn.dotnet.framework.aspnet)

狠下心,把华为给拒了
等不到网易,去了深圳APPENON,以后回厦门只要坐半天的车

优质内容筛选与推荐>>
1、EhCache 分布式缓存/缓存集群
2、【计算机视觉】BING: Binarized Normed Gradients for Objectness Estimation at 300fps
3、初识web service
4、函数和对象
5、Python提取Linux内核源代码的目录结构


长按二维码向我转账

受苹果公司新规定影响,微信 iOS 版的赞赏功能被关闭,可通过二维码转账支持公众号。

    阅读
    好看
    已推荐到看一看
    你的朋友可以在“发现”-“看一看”看到你认为好看的文章。
    已取消,“好看”想法已同步删除
    已推荐到看一看 和朋友分享想法
    最多200字,当前共 发送

    已发送

    朋友将在看一看看到

    确定
    分享你的想法...
    取消

    分享想法到看一看

    确定
    最多200字,当前共

    发送中

    网络异常,请稍后重试

    微信扫一扫
    关注该公众号





    联系我们

    欢迎来到TinyMind。

    关于TinyMind的内容或商务合作、网站建议,举报不良信息等均可联系我们。

    TinyMind客服邮箱:support@tinymind.net.cn