asp.net - 客户端服务器性能 - 非常远的距离

标签 asp.net performance networking

我们有一个网站托管在地球的一侧和另一侧的客户。

它的 asp.net 和表单上有大量复杂的业务规则。因此,在很多情况下,用户采取了一些行动,网站发回消息以根据业务规则更改表单。

所以现在客户提示网站滞后。

对我们来说,延迟几乎不明显,所以我认为这里几乎是在谈论纯粹的地理距离。

有哪些提高性能的选项...

a) 将镜像数据中心放置在更靠近客户所在国家/地区的位置 b) 重写整个应用程序,尝试完全在客户端脚本中实现业务规则(可能不可行)

除此之外,是否有任何提示或技巧可以提高性能。

我们已经在 db 和 web 服务器之间进行了大量缓存,但在这种情况下,这不是问题,因为它们是并排的......

问题是客户端和服务器之间的 30,000 英里往返......

(我注意到反过来也很慢 - 当我在客户所在国家/地区使用网站时,它们似乎总是很慢......)

最佳答案

我也有这个问题。我的一些客户在新西兰,而我在英国。除非你算上深空探测器,否则这是一次尽可能大的往返。

从这里开始:

http://www.aspnet101.com/2010/03/50-tips-to-boost-asp-net-performance-part-i/ http://www.aspnet101.com/2010/04/50-tips-to-boost-asp-net-performance-part-ii/

其中许多是服务器端提示,但这些页面中可能对您有所帮助的特别提示包括:

另外,在 Firefox 中,安装 YSlow Add-on 。这将为您提供有关如何改进特定页面的提示

如果所有这些还不够,并且您可以负担得起时间和投资,那么将您的应用程序转换为 ASP.NET MVC 将使您的页面在带宽上更轻松。您可以逐步执行此操作,首先更改最有问题的页面,然后随着时间的推移替换您的网站,而不会影响您的用户。但只有在用尽了您问题的所有答案发布的许多想法之后才这样做。

如果您要进行重写,另一种选择是考虑使用 Silverlight 的富 Internet 应用程序。这样,您就可以在客户端浏览器中执行适当的 C# 业务规则,并且只返回小数据包的服务器。

最明显的短期解决方案是在与您的客户相同的国家/地区购买一些托管空间,但如果您在本国有其他客户,则必须考虑数据库同步。

关于asp.net - 客户端服务器性能 - 非常远的距离,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3422881/

相关文章:

asp.net - 跨多个回发存储对象的方法

c++ - Getter & Setter 的最佳表现

performance - 通过应用程序预热配置 Azure 网站

c - 当EPOLLHUP看起来足够时,为什么我们需要EPOLLRDHUP?

networking - 为什么恰好一次语义不可行?

asp.net - 使用 Controller 中的 Hub 方法?

asp.net - 出生日期验证

asp.net - 客户端验证失败后如何保持滚动位置?

r - R中帕累托前沿的快速计算

networking - 如何从主机上的浏览器连接到 docker 容器?