讨论下是ASP的执行速度块,还是ASp.net的执行速度快?
很多人做asp.net的人都说,aspx的文件只有在第一浏览时速度慢点外,但在以后访问的时候在相同情况下都会比asp的快.
我以前是做asp的,现在用.net了,感觉执行速度慢了很多,也看了许多高手说的优化代码,提高性能,利用缓存之类,但觉得用了之后.aspx的速度我觉得还是没asp的快.
而且我觉得,aspx中的缓存太长,就不利于页面的交互性,提高性能的话象dataset,viewstates等都是为了方便程序员用的东东都要少用了,这样无疑降低的aspx的功能,那还不如用asp做呢.当然,.net 还有很多其他的优势,象安全性了.这里我想听听大家的意见(关于两者执行速度的比较).
问题点数:80、回复次数:57Top
1 楼lovebanyi(风云)回复于 2005-09-21 11:37:49 得分 10
专家说比asp快3到4倍Top
2 楼pass2005(我自横刀向天笑,去留肝胆两昆仑)回复于 2005-09-21 11:41:10 得分 0
专家说的话也不一定准,用事实说话
个人认为同样环境下..net优化做的再好,速度也肯定超不过asp
理由:1.net本身对服务器的要求就比asp的要高,可想同样环境下,谁更快
2.本人多次试验,就光取数据,net速度也稍微慢于aspTop
3 楼pass2005(我自横刀向天笑,去留肝胆两昆仑)回复于 2005-09-21 11:43:03 得分 0
期待高手解惑?Top
4 楼qsoo(求 索)回复于 2005-09-21 12:22:44 得分 10
你不要一个人测试 要在网上测试才准 不然自己的机子上编译 当然慢了Top
5 楼jijl2001(jijl2001)回复于 2005-09-21 12:25:29 得分 10
呵呵,感觉不出.net快Top
6 楼cuike519(I will be back!)回复于 2005-09-21 12:29:02 得分 20
前不久和微软的支持讨论了一下产品性能,其中我也问到了同样的问题。
如果从技术上来说,不论怎么说ASP.NET都比ASP快(一个编译型的程序理当比一个解释型的快),但是我在浏览了大量的站点发现好像所有的ASP都比ASP.NET快,对于这一点微软的支持也提供了很多MSDN上提高效率的方法,并声称ASP.NET比ASP要快。
不过后来通过他的指导产品的性能总算满足要求了。我想可能是现在网络上没有大型的ASP.NET的服务器的原因。或者即使它是编译型的,但是并没有编译成本地代码的原因,它还是运行在CLR上面的原因。
由于产品性能满足要求了,我也就没有继续研究下去了。如果搂主有兴趣可以写两个功能一样的asp页面和一个asp.net页面,在同样的机器下做同样的压力测试看看测试效果如何。
gz...
--个人观点。Top
7 楼ghchen()回复于 2005-09-21 12:36:07 得分 10
我只听人说asp.net快,也许是指开发快Top
8 楼czhy()回复于 2005-09-21 12:47:45 得分 0
就是开发快~Top
9 楼lindping(罗将神)回复于 2005-09-21 12:53:41 得分 10
我个人感觉aspx只有当页面回传而不需要重新从数据库读取数据的时候要比asp快很多,asp是没有状态记录的,任何时候刷新页面都是重新执行一遍页面代码, 因为aspx可以把控件的数据存放在客户端(就是控件的enableviewstate属性),而如果需要重新读取数据并执行邦定的话,我个人感觉两者速度差不多,甚至aspx还慢一些
Top
10 楼fellowcheng(鹰击长空)回复于 2005-09-21 13:20:57 得分 0
看看Top
11 楼pass2005(我自横刀向天笑,去留肝胆两昆仑)回复于 2005-09-21 13:35:45 得分 0
也许是指开发快
Top
12 楼jyk(今天由我来写的代码,明天就让程序自己完成!喜欢编程。和气生财。共同提高。共同进步!)回复于 2005-09-21 13:46:17 得分 0
看看这个网站的速度
http://www.sanhaoonline.com
上回去客户那里演示一个网站后台管理系统,安装到了客户的一台笔记本电脑上,
安装导入数据库、配置IIS的操作都非常的慢,
演示网站的速度会不会太慢,影响演示效果呢?
结果速度出奇的快,比在我的台式机上运行的还要快。
笔记本:赛扬的CPU,频率看不到;内存256M,还要拿出十几M作为显存。
我的台式机:xp2000+ 、金士顿512M内存。
呵呵居然输给了那台笔记本。
Top
13 楼meisheep(meisheep)回复于 2005-09-21 13:48:57 得分 0
那PHP和ASP.NET,那样快呢?谢谢!Top
14 楼foxconn_nich(Blog: http://www.jemy.cn)回复于 2005-09-21 13:51:50 得分 0
asp.net肯定快Top
15 楼pass2005(我自横刀向天笑,去留肝胆两昆仑)回复于 2005-09-21 13:57:37 得分 0
to 回复人: foxconn_nich()
请说出理由,我也知道微软是那样宣传的.Top
16 楼VBDN( PowerBASIC.CN )回复于 2005-09-21 14:10:43 得分 0
微软的东西,越是后来出来的速度越慢。Top
17 楼VBDN( PowerBASIC.CN )回复于 2005-09-21 14:11:15 得分 0
对了,还有体积也跟着变大。Top
18 楼liuqinglq(白菜)回复于 2005-09-21 14:21:19 得分 0
楼主的问题就好比OOP语言刚出来时,很多人质疑用其开发的软件运行效率低时一样……
其实直接用机器码写出来的程序运行最快...真的
呵呵
为什么开发越方便的东西,在运行效率上会显得更慢,只因为里面包含了很多“通用”和“方便”的东西,也就是不是为你的程序专门定制的东西,简单说一点就是“垃圾代码”Top
19 楼pass2005(我自横刀向天笑,去留肝胆两昆仑)回复于 2005-09-21 14:23:05 得分 0
软件都这样,越到后越大,功能是越全,多机器的要求越高,人需要的记得东西越少了Top
20 楼pass2005(我自横刀向天笑,去留肝胆两昆仑)回复于 2005-09-21 14:24:39 得分 0
liuqinglq(白菜 说的有道理Top
21 楼ye_zi(行到水穷处·坐看云起时)回复于 2005-09-21 14:26:44 得分 0
呵呵,事物都是进步的Top
22 楼ccghghgj(CSDN论坛小助手、验证码识别)回复于 2005-09-21 14:33:37 得分 0
看的乱乱的。我觉得,还是asp.net快些吧。只是要学的东西多了许多。
===============================
ilmself 小草 @
http://me.ovcity.com
ilmself@hotmail.comTop
23 楼lovebanyi(风云)回复于 2005-09-21 14:38:50 得分 0
我倒楼主还真不明白啊..asp.net可是快多了.
插入5000条数据 到现在还没有完(5分钟了) asp.net 只用了19秒 ,asp.net我是用参数来的(这个是常用的插入方法)下面是ASP插入的常用方法只些用conn.excute() 时间会是ADO的1/2但差距还是太远了
<%
dim dateTime1
dim dateTime2
dateTime1=now
openconn
dim i
for i=0 to 5000
kkk()
next
dateTime2=now
Response.write(Datediff(s,dateTim2,DateTime1))
function kkk()
dim sql
dim rs
sql="select * from [Counter0]"
set rs=server.createobject("adodb.recordset")
rs.open sql,conn,1,3
rs.addnew
rs("Y")=100
rs("M")=100
rs("D")=10
rs("T")=now
rs("H")=100
rs("ipAddress")=1000
rs("area")=1000
rs("search")=1000
rs("searchKey")=564
rs("os")=54654
rs("browser")="lkj"
rs("screen")="45654"
rs("fromDomain")="baidu.com"
rs("UrlReferrer")="http://www.shichang.com"
rs("Url")="http://www.16.xom"
rs("again")=1
rs("state")=10
rs("userid")=1
rs.update
rs.close
set rs=nothing'不知道这边不关会不会快点
end functionTop
24 楼lovebanyi(风云)回复于 2005-09-21 15:08:04 得分 0
for i=0 to 100
kkk()
next
dateTime2=now
Response.write(Datediff("s",dateTime2,DateTime1))
改成100条了. 结果是27 S 而asp.net 是0 S 查询一下数据库数据确实有加进去Top
25 楼lovebanyi(风云)回复于 2005-09-21 15:08:54 得分 0
asp.net分层了.代码比较长就不给出来了Top
26 楼pass2005(我自横刀向天笑,去留肝胆两昆仑)回复于 2005-09-21 16:02:02 得分 0
要不你发给我,我试试.asp添加的话,用insert比用addnew速度要快点.Top
27 楼meisheep(meisheep)回复于 2005-09-21 16:27:46 得分 0
那PHP和ASP.NET,那样快呢?谢谢!
Top
28 楼feb9903(无根无极 万法自然)回复于 2005-09-21 16:42:45 得分 0
asp.net 的网站第一打开的时候比较慢,以后就快了,理论上应该是 asp.net 的快吧 ,因为 asp.net 都是编译成DLL了,而asp需要实时编译.Top
29 楼meisheep(meisheep)回复于 2005-09-21 17:17:25 得分 0
asp本来就已淘汰了。我只关心的是ASP.NET和PHP哪个速度快些?!Top
30 楼pass2005(我自横刀向天笑,去留肝胆两昆仑)回复于 2005-09-21 17:29:55 得分 0
asp需要实时编译.
---------------
asp是解释型Top
31 楼jyk(今天由我来写的代码,明天就让程序自己完成!喜欢编程。和气生财。共同提高。共同进步!)回复于 2005-09-21 18:41:49 得分 10
to:lovebanyi(风云)
你写的asp添加记录的方法有问题,它本身就是最慢的一种方法。
rs.open sql,conn,1,3
rs.addnew
rs.update
rs.close
set rs=nothing
每一次添加的时候都是先open 然后close 甚至还 set rs=nothing ,岂不是慢上加慢
你想呀,我往仓库里放5000件货物:
我先把门打开,放进去一件货物,然后把门关上;
再把门打开,放进去第二件货物,然后把门关上;
......
重复5000次,当然会慢死了。
至少也要,
打开门,放进去一件,再放第二件,再放第三件......都放进去之后,最后在关门。这样可以快一些。
用addnew的方法也是慢的一种添加方式
换成 cn.execute("insert into ") ,这种方式,又可以快一些。
这样一来就不会有太大的差别了
Top
32 楼lovebanyi(风云)回复于 2005-09-21 20:44:48 得分 0
有差别啊. 我在asp.net里也是开门>插入数据关闭Top
33 楼lovebanyi(风云)回复于 2005-09-21 20:47:03 得分 0
php也是慢啊.除非也改成编译型的.Top
34 楼lovebanyi(风云)回复于 2005-09-21 20:51:16 得分 0
三楼的取数据用DataSet 是比较慢的.如果用其它方法会比较快.网上有好多相关的文章Top
35 楼flashasp(flashasp)回复于 2005-09-21 20:52:09 得分 0
当然快啊,Top
36 楼woainin(woainin)回复于 2005-09-21 20:58:27 得分 0
我确实感觉asp.net慢!Top
37 楼luojinat2005()回复于 2005-09-21 21:01:34 得分 0
现在硬件性能成倍提升,那细微的速度差别已经不是很重要了吧.
主要是ASP.NET的更安全和功能更强大,开发速度更快.Top
38 楼jyk(今天由我来写的代码,明天就让程序自己完成!喜欢编程。和气生财。共同提高。共同进步!)回复于 2005-09-22 07:08:36 得分 0
to:lovebanyi(风云)
你可以先把 set rs = nothing 去掉,看一下时间
然后在按我说的, 用只开一次门的方式,
最后再用一下 cn.execute("insert into ") 的方式。
应该是越来越快的。
至于asp.net,他对于open、close的地方,估计是做了优化(比如连接池),缩小了这方面的差距。
Top
39 楼yangzixp(扬子(四川·巴中))回复于 2005-09-22 08:29:18 得分 0
我个人现在开始也置疑.net的速度和性能了。
无可厚非的是,.net的开发效率确实提高了不少。而且很多新的特性大大的方便了开发者。
但是就对服务器配置的要求,和程序的性能,速度等来说,我觉得很多地方和asp差不多,甚至不如asp!
欢迎讨论:QQ 21112856Top
40 楼yangzixp(扬子(四川·巴中))回复于 2005-09-22 08:33:57 得分 0
msn: zjgzkq@hotmail.comTop
41 楼gflpower(燕赤侠)回复于 2005-09-22 08:41:28 得分 0
比ASP 快25%Top
42 楼lovelxj(伊斯人,吾谁与归)回复于 2005-09-22 08:48:32 得分 0
施主们 讨论这个快慢 应该要在一个压力大的情况下。
在简单的页面中,如果就几个用户访问,那也许是ASP快,因为他运行需要的资源不多,而这个用户上升到一定的数量时,。NET的性能就体现出来了Top
43 楼sunheartlee(心晴)回复于 2005-09-22 08:54:56 得分 0
asp.net是比asp快多了Top
44 楼dushizhuma(杨正祎)回复于 2005-09-22 12:18:04 得分 0
应该是编译后的ASP.NET应该比asp快..Top
45 楼gxboy(Blin 小学生学.NET)回复于 2005-09-22 12:35:00 得分 0
说实话,我感觉不出来asp.net比asp快。但足以满足各种性能要求。Top
46 楼pass2005(我自横刀向天笑,去留肝胆两昆仑)回复于 2005-09-22 13:55:07 得分 0
讨论的很激烈呀,
我来总结下:理论上是asp.net编译后比asp快,但综合楼上的这么多人的经验来讲,认为asp快的还是占多数,首先希望下判断的各位做过asp和asp.net,不能听什么微软宣称的,Top
47 楼tgh1981(虚拟等待)回复于 2005-09-22 14:14:48 得分 0
感觉是差不多的,但是asp.net性能提高很多,安全性也是,当然,要具体情况看Top
48 楼friendsalbum()回复于 2005-09-22 14:24:57 得分 0
asp.net比asp要快好几倍的,而且是人越多速度就越快,因为是asp.net编译型语言比asp的解释型要快很多的。asp.net的最大优点就是速度奇快!Top
49 楼pass2005(我自横刀向天笑,去留肝胆两昆仑)回复于 2005-09-23 10:35:11 得分 0
friendsalbum()
-==================
?Top
50 楼maizi7074(麦子)回复于 2005-09-23 10:52:12 得分 0
不管谁快谁慢,asp.net既然出来了,就只能转向它了呀,不能一直用asp呀,都用这么多年了,得用别的了。
如果你只有两个选择,asp和asp.net,你只能选择asp.netTop
51 楼jimnet(jim)回复于 2005-09-23 11:38:49 得分 0
确实缺少权威的数据证明这个速度上的优势 。
说asp快的,是他比较轻盈,说慢是他是解释型的每次执行都要解释一次。
说asp.net快,刚好相反....
但是asp轻盈但支持功能都要少,asp.net编译也只是CLR。
还是期待大家拿出测试数据来比较能说明问题。
还有读数据出来的ASP第一次运行是也是会稍慢,后面再刷就快很多。这个原因是因为ADO 不是ASP本身。
Top
52 楼cw888()回复于 2005-09-23 15:08:16 得分 0
ASP和ASP.Net中不能比较速度的:快慢要根据具体的应用而定!ASP.net是处理中大系统的分层我分担任务处理很方便的。这与jsp 和 j2ee一样道理!单查一格数据:asp应该比asp.net快!但处理相对大一点的系统时:asp.net就有优势了:)Top
53 楼leisang(仰望深邃的星空)回复于 2005-09-23 15:39:24 得分 0
首先对于数据库操作来说asp.net真的比asp快很多。
其次asp.net有页面缓存,这个可是提高速度的另一法宝,对于大型网站来说首页也无需做成静态页面了。
Top
54 楼friendsalbum()回复于 2005-09-23 15:46:08 得分 0
to pass2005:
呵呵,这些都是MSDN网络讲座里面微软的人说的。而且有第三方的独立评测。PCMagazine做的评测,单cpu,双cpu,4CPU。jsp、asp、asp.net都测了。asp.net要快好几倍的。而且好像jsp在4cpu的情况下运行不太好,性能反而下降了。Top
55 楼wanghui0380(放歌)回复于 2005-09-23 15:57:42 得分 0
呵呵,规模和人数拉
你一个人测试和100同时人测试自然是不同.
人家的测试都是用专业测试软件开个几k线程同时并发,叫压力测试.你一人测试自然和他们的结果不同Top
56 楼henry3695(henry(老师说学好正则可以赚美元的))回复于 2005-09-23 16:11:46 得分 0
写个简单的循环事件测试一下啊,
测试过了才可以出结果的,
别人说的不一定对,呵呵Top
57 楼applelppa(人生若只如初见)回复于 2005-09-23 17:03:19 得分 0
ASP.NET 缓存一出, 谁与争锋Top




