Nancy并发请求同步运行

本文关键字:运行 同步 请求 并发 Nancy | 更新日期: 2023-09-27 18:01:14

我原以为下面的代码能够处理多个请求,所有请求都有5秒的延迟,但如果同时收到两个请求,第二个请求需要10秒(等待第一个请求完成(。我在这里错过了什么?

public class Test : NancyModule
{
    public Test()
    {
        Get["/", runAsync: true] = async (x, ct) =>
        {
            Console.WriteLine("Before");
            await Task.Delay(5000);
            Console.WriteLine("After");
            return "Hello World";
        };
    }
}

Nancy并发请求同步运行

您的代码是正确的。

问题是,如果您使用单一的web浏览器类型测试生成并发请求,则取决于您使用的浏览器,浏览器本身可能会阻止发送并发请求。

为了安全起见,我建议您混合使用多种浏览器类型来生成并发请求。