Nancy 同步并发请求 运行
Nancy concurrent requests running synchronously
我期待下面的代码能够处理多个请求,所有请求都有 5 秒的延迟,但是如果 2 个请求同时进入,第二个请求需要 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";
};
}
}
您的代码是正确的。
问题是,如果您测试使用单一网络浏览器类型生成并发请求,根据您使用的浏览器,浏览器本身可能会阻止发送并发请求。
为了安全起见,我建议您混合使用多种浏览器类型来生成并发请求。
我期待下面的代码能够处理多个请求,所有请求都有 5 秒的延迟,但是如果 2 个请求同时进入,第二个请求需要 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";
};
}
}
您的代码是正确的。
问题是,如果您测试使用单一网络浏览器类型生成并发请求,根据您使用的浏览器,浏览器本身可能会阻止发送并发请求。
为了安全起见,我建议您混合使用多种浏览器类型来生成并发请求。