【发布时间】:2019-07-30 12:18:50
【问题描述】:
我们将在 dotnet core 2.1 中创建一个新的 API,这个 Web API 将是一个高流量/事务,例如每分钟 10,000 或更高。我通常像下面这样创建我的 API。
[HttpGet("some")]
public IActionResult SomeTask(int id)
{
var result = _repository.GetData(id)
return Ok(result);
}
如果我们像下面这样实现我们的 Web API,会有什么好处?
[HttpGet("some")]
public async Task<IActionResult> SomeTask(int id)
{
await result = _repository.GetData(id);
return Ok(result);
}
我们还将为这个新 API 使用 EF 核心,如果我们执行异步任务,我们是否也应该使用 EF 异步
【问题讨论】:
-
好吧,你不会从唯一的
await是await Task.CompletedTask;的异步方法中获得任何好处——因为它会轻而易举地越过那条线而不会导致任何“异步”发生。 -
此链接解释了异步的含义。 stackoverflow.com/questions/16083613/…
-
对不起,这将是从数据库中获取数据的东西。我会更新我的问题
标签: asp.net asp.net-web-api .net-core asp.net-core-webapi