【问题标题】:ASPX or ASHX as ajax server page?ASPX 或 ASHX 作为 ajax 服务器页面?
【发布时间】:2009-10-05 04:58:54
【问题描述】:

在考虑将结果返回给 javascrit 中的 ajax 调用的 ASP.NET ajax 服务器页面时,在性能/速度方面什么是最好的? ASPX 文件还是 ASHX 文件?

【问题讨论】:

    标签: asp.net ajax ashx


    【解决方案1】:

    我认为最重要的问题是结果是否可缓存,如果可以,它是公开的还是私有的可缓存的。

    如果服务只是一个数据查找(而不是实际修改数据的调用),那么您可以设置启用客户端缓存的响应标头。如果数据也是公共数据,那么您可以设置响应头,以便代理服务器等可以缓存数据。如果经常请求数据,则可以减轻 Web 服务器的负载。

    但这要求请求是 HTTP GET 操作,ASHX 文件可以处理。但是 WebMethod 会生成一个 HTTP POST。

    因此,如果启用响应的客户端缓存有任何意义,请选择 ASHX。例如,如果数据每秒都在变化,那么启用客户端缓存就没有意义。如果请求真的修改了数据,那么缓存数据客户端也没有意义。

    否则,我认为一种方法或另一种方法不会有任何严重的性能问题。

    【讨论】:

      【解决方案2】:

      我没有比较,但我认为如果您使用Page Methods,那么它们的性能应该与 ASHX 相当,因为除了在 ajax 请求中指定的一次之外,没有对其他方法的额外调用。

      【讨论】:

      • 页面方法需要整个页面生命周期过程,这与 asmx 服务或 ashx 处理程序不同。页面方法很方便,但牺牲了一些性能。为了演示这一点,请尝试在 page_load 中设置断点并调用 pagemethod。
      猜你喜欢
      • 1970-01-01
      • 2010-10-14
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-02-16
      • 2011-01-19
      相关资源
      最近更新 更多