ASP.NET MVC中高流量,复杂形式的一些提示是什么?

时间:2010-09-30 13:07:46

标签: c# asp.net-mvc-2 performance complexity-theory

我们目前有一个WinForms应用程序,我们希望慢慢迁移到Web应用程序。

一个屏幕是一个使用DataWindow的时间表输入系统,并且非常慢且有问题。 无论如何,时间表屏幕有五个实时保存的部分。完成的时间表需要2-5个部分。

目前,系统运行SLOW。我们的一些远程办公室几乎没有压裂-T1。

所以我想使用ASP.NET MVC2重新设计该屏幕,甚至提供一些增强功能,如自动完成功能(目前还缺少),等等。

对于我 KNOW 的表单的最佳做法的任何建议都是高容量的并且可能在可能的慢速网络上运行?

目前,有很多往返流量,因为时间表的每个部分都会在他们跳出字段时保存。我想避免这种情况,但我承认部分保存很酷。

感谢任何建议或提示。

由于

2 个答案:

答案 0 :(得分:1)

这是一个很难给出明确答案的答案 - 无论你采取哪种选择都会有权衡和妥协。

我个人建议使用OOB Silverlight 4 + WCF。

您可以一次性下载Silverlight应用 1 ,但是一旦安装了它,您应该拥有的唯一流量就是发送到/来自Web服务的数据和消息。将流量减少到纯数据+消息并消除HTML将大大减少拥塞。

您可以使用ASP.Net或ASP.NET MVC中的AJAX,但每次用户想要填写时间表时,您仍然可以下载页面。 AJAX也可能有点讨厌,特别是在提供自动完成等功能时。在使用ASP.NET / MVC时,使用UI可能会更加困难,使用SL,您会发现更容易模拟当前Winforms应用程序的UI功能。根据我的经验,在Silverlight中开发富Web应用程序要比在ASP.NET中快得多。

在任何情况下,最好是使用这两种技术对一些演示进行编码,然后运行它们以确切了解它们在最差的办公室中的表现,这将是确定哪种方法最佳的唯一方法。< / p>

1 使用SL4可以减少下载Silverlight应用程序的流量,使应用程序成为Out of Browser one,将XAP文件发送给用户并使用 sllauncher.exe 安装它(这是系统管理员的面包和黄油的东西)。这确实使得更新SL应用程序变得更加困难,但您可以在网络流量特别糟糕的办公室中这样做。

答案 1 :(得分:0)

php / lamp vs. asp.net mvc:唯一涉及的因素是许可费用。团队是一个重要的因素,当然这取决于您之前存在的技能,但是通过追逐您不太习惯的平台,开发+基础设施的开销会更高。

由于这个原因,该项目可能无法给出预期的结果,而且这比保存一小部分更大。先发制人:你不需要在asp.net MVC上使用ms sql,因此“数据库许可证不会使它成为一个小%”并不是一个有效的参数。

至于提示,请查看我发布到此问题的答案:Scalable application with ASP.NET or Google AppEngine。此外:

  • 您不需要一次加载所有这些标签。您可以在用户选择标签时检索标签。这将使初始加载时间更快(以第一次打开其他选项卡时有希望的v。小延迟为代价)。如果适用于该方案,您可以在客户端保留已打开的选项卡,因此额外的命中/延迟仅在第一次打开额外选项卡时发生。
  

目前,有很多往返流量,因为时间表的每个部分都会在他们跳出字段时保存。我想避免这种情况,但我承认部分保存很酷。

您可能已经这样做了,但您可以使用更改检测来确保仅在用户实际进行更改时发布。此外,您无需发送整个标签,您只需发送更改即可。

相关问题