代码之家  ›  专栏  ›  技术社区  ›  CodeRedick

为什么从网页调用web服务的速度较慢?

  •  1
  • CodeRedick  · 技术社区  · 16 年前

    我们有一个DLL作为我们网站前端和后端票务系统之间的中间层。插入票务系统的方法解释起来有点复杂,但简短的版本是速度慢。我得到的最佳案例是9秒的提交时间。

    是什么原因造成的?

    编辑:作为对几个答案的回应。。。

    for (int i = 0; i < numIterations; i++)
            {
                startTimes[i] = DateTime.Now;
    
                try
                {
                    cvNum = Clearview.Submit(req, DateTime.Now, DateTime.Now, false);
                }
                catch (Exception ex)
                {
                    exceptionCount++;
                    lblResult.Text += @"<br />Exception Caught: " + ex.Message + @"<br />";                    
                }
    
                endTimes[i] = DateTime.Now;
        }
    

    这两种情况下都是相同的循环,我在调用库之前和之后标记时间,库进行进一步处理,然后调用web服务。但这种处理应该是一致的,不是吗?我在调试期间进行了跟踪,没有发现任何延迟,无法访问实际的web服务调用。。。

    再次编辑:使用Ants,在这两种情况下,99.4%的时间都是通过web服务调用发送的。这似乎没有什么区别。。。除了网页超时所用的时间比windows应用程序长之外。

    3 回复  |  直到 16 年前
        1
  •  2
  •   Mitchel Sellers    16 年前

    web服务相对于web服务器的位置可能存在问题。此外,web UI中的页面结构和其他处理可能会影响应用程序处理所需的时间。

        2
  •  1
  •   Jon Skeet    16 年前

    在应用程序的两面都添加日志-这将显示时间的走向。如果这没有帮助,请使用 Wireshark 跟踪网络活动。

        3
  •  1
  •   Toybuilder    16 年前

    我支持使用Wireshark来了解情况的建议。您至少可以满足自己的后端处理时间是(无论如何应该是)相同的。。。