在linux上用mono托管你的asp.net和在window服务器上托管iis有什么不同吗?
发布于 2009-05-30 14:42:09
当然存在差异,就像Java和.Net之间存在性能差异一样。然而,它将根据应用程序所做的事情而变化很大。
在某些方面,.Net比Mono要快得多。在某些方面,Mono比.Net快得多。在某些情况下,它们的表现大体相当。当比较在Windows或Linux上运行的应用程序时,情况也是如此。在比较运行在IIS和Apache上的应用程序时也是如此。
很可能,它们都可以足够快地运行您的应用程序,并且您会发现您的性能将由您的编程技术驱动。每秒几个请求的差异可能不是什么大问题,除非您有一个大型的服务器场,在这种情况下,您很可能有足够的资源在这两个服务器上进行测试,看看哪个更快。
发布于 2009-06-01 14:20:33
关于lextm的建议,即发布性能比较的结果是“不可能的”,End-User License Agreement (aka EULA) for Windows Vista Ultimate允许它,但有条件的。
MICROSOFT .NET BENCHMARK TESTING。软件包括.NET Framework3.0的一个或多个组件(“.NET components”)。您可以对这些组件进行内部基准测试。您可以披露这些组件的任何基准测试的结果,前提是您遵守中规定的条件。尽管您与微软有任何其他协议,但如果您披露此类基准测试结果,微软有权披露其对您的产品进行的与适用的.NET组件竞争的基准测试的结果,前提是该产品符合http://go.microsoft.com/fwlink/?LinkID=66406规定的相同条件。
据我所知,这些条件是合理的披露要求:你用来做测试的源代码,你测试的软件版本,你进行测试的日期,你所做的配置和优化,等等。
The EULA for Windows Server 2003包含相同的规定。我找不到Windows Server2008(最新版本)的EULA,但我认为基准测试条款仍然存在。
附录:如果您查看Windows7的EULA,您可能会发现无基准测试条款,或者更准确地说,是无发布条款;这是因为Win7仍处于预发布阶段。当它正式发布时,预计会出现标准的基准发布条件。
在过去,微软在这个话题上有一个更严格的政策。基本上:你需要得到我们(微软)的许可才能披露性能比较。根据the link in the above EULA,这一政策已经放宽,甚至追溯到.NET v1.0和v1.1。
发布于 2009-05-30 14:46:44
单声道太烂了!
或者更多的政治正确: Mono还没有准备好黄金时间,至少对于Asp.Net web应用程序:
不支持caching
编辑:为我的帖子添加了引用,回答了最新的评论。
然而,为了进行公平的比较...我应该启用缓存...在aspx文件的头部添加下面的行应该会对我有所帮助。
<%@ OutputCache Duration="20“VaryByParam="None”%>
我已经做到了--没有结果!性能是一样的。
注意:经过更深入的检查,modo中的缓存实现是非常有限和糟糕的,在最近的检查之后,它仍然适用于较新版本的mono。
好的,不管怎样,我做了一些基准测试(...)简单的时钟给我提供了缓存变量每秒750页,非缓存变量每秒650页。测试是在双核奔腾D 3G上的IIS5.0下完成的
同样的代码。使用mod_mono (在Signle Core AMD Athlon3000下)给了我:
因此,基准测试是不可能的。
引用post仍然不是增量式的吗?
没有mono肯定还没有准备好进入黄金时间。
https://stackoverflow.com/questions/929210
复制相似问题