【发布时间】:2011-01-21 05:26:02
【问题描述】:
我有一个在我的 Windows 开发机器上运行良好的 ASP.NET 应用程序。虽然服务器是运行 Mono 的 Linux,但一旦上传相同的代码,其运行速度比在 Windows 机器上慢 4 或 5 倍(例如,一项任务需要 25 秒与 5 秒)。
这种性能是 Mono 的一个已知问题吗?我能做些什么吗?代码主要是文本处理、字符串替换、正则表达式等,如果这有什么不同的话。我已经在本地使用 VS 分析和调试了我的代码,但我不知道是否可以使用 Mono 在服务器上进行远程调试,或者我接下来需要做什么才能真正修复它。
【问题讨论】:
-
做什么:为 Windows 付费 :) 说真的,Mono 往往比 MS .NET 慢 2-5 倍。您使用的是最新的 Mono 吗?对我来说,2.8 版的性能非常好。
-
如果这是唯一的方法,我将迁移到 Windows 主机。我读过 Mono 的性能与 ASP.NET 大致相当,所以我只是想知道我是否遗漏了一些东西,因为性能要差得多。
-
我建议运行一些微基准测试来查看问题所在。可能是您的正则表达式在 Mono 上运行得更慢,或者 Mono 连接字符串的速度更慢。您也许可以找到一些次优操作,并用 Mono 上更快的操作替换它们。
标签: c# asp.net performance mono mod-mono