ASP.NET Core中的并发请求

在ASP.NET Core 2.2中,我有一个基于HttpSys自托管的文件上传方法。我有一个负载测试实用程序,可以启动10个并发连接并上传大文件。它可以在我的工作站(24个CPU内核)上正常工作-所有10个请求都并行执行。

当我将其放在小型VM(2个内核,Win Server 2012R2)上时,它将10个请求排队,然后一次执行2个。

我的问题:如何增加并发处理的请求数量?

我尝试了ThreadPool.SetMinThreads(10,10),但没关系。

这是我的代码(简体):

[HttpPut]
public async Task<actionResult> Put(string partition,string guid)
{
    var path = GetPath(partition,guid);

    if (System.IO.File.Exists(path)) 
        return Status(409,"File already exists");

    using (var file = new FileStream(path,FileMode.Create,Fileaccess.Write,FileShare.Read,4096,true))
    {
        await Request.Body.CopyToAsync(file);
        return Status(200,"");
    }
}
afei198602 回答:ASP.NET Core中的并发请求

暂时没有好的解决方案,如果你有好的解决方案,请发邮件至:iooj@foxmail.com
本文链接:https://www.f2er.com/3148214.html

大家都在问