【问题标题】:How to optimize WCF service for ajax calls?如何优化 ajax 调用的 WCF 服务?
【发布时间】:2012-08-10 13:02:29
【问题描述】:

我有一个托管在 IIS 上的 wcf REST 应用程序。一切正常,GET 和 POST。我通过 jquery ajax 调用。

我的客户端应用程序似乎反应不快,我在浏览器控制台日志中检查了导致它非常慢的原因,发现我的 WCF 请求占用了很多时间。我有 4 个请求,每个请求都不少于 350 毫秒,还有其他 js 和 css 文件。 JS 和 CSS 文件已经被缩小。现在我的问题是如何减少花费在 WCF 调用上的时间?顺便说一句,我不能做异步,因为来自服务的每个响应都是另一个请求所需要的。

如果您有任何建议,请告诉我。

【问题讨论】:

  • 当你这么说时顺便说一句,我不能做异步,因为另一个请求需要来自服务的每个响应。你能不能在前一个请求的回调?
  • 可以,但我确实需要第一个请求中的数据。
  • 您是否尝试过用简单的硬编码响应替换 WCF 服务中的实际逻辑,以确定缓慢是在服务正在完成的实际工作中(例如数据库访问?)还是在开销?

标签: c# jquery .net ajax wcf


【解决方案1】:

如果由于请求依赖而无法执行异步操作,则可以尝试减少发送的请求数量:因此,不要让 4 个单独的小请求执行一个更大的请求。

另一种可能性是,一旦第一个请求在成功回调中成功,就执行下一个请求,以此类推。这样,您就可以在这些请求期间执行异步操作并且不会冻结客户端浏览器。但通常最好执行单个请求。

现在我的问题是如何减少花费在 WCF 调用上的时间?

这显然取决于您的 WCF 服务在做什么。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2016-01-20
    • 2019-03-02
    • 1970-01-01
    • 2014-03-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多