ASP.. NET MVC异步动作:谁等待结果
本文关键字:等待 结果 NET MVC 异步 ASP | 更新日期: 2023-09-27 18:11:05
我正试图熟悉TPL并在mvc中使用它。在所有指南中看起来都很好(将action标记为async,使用await => profit!),但我真的不理解它。
正如我所理解的调用链是这样的:客户端发送http请求→web服务器获得请求→mvc动作处理程序使用路由规则找到控制器和动作并执行它→动作在响应中写入结果。
BUT:路由器等待动作的魔力是什么?谁(以及如何?)处理这个链中的第一个异步方法?
我会尽量解释我所理解的:
Who is waiting:您的服务器,例如IIS。Router在这里没有做任何类似魔法的事情,只是通过简单的mvc管道运行,在其中一个关卡上执行一个长时间的操作。
如何等待:如果你知道你的应用程序有一些长时间运行的任务,你应该更改web服务器中的一些配置以获得高并发性。您可以在服务器配置中阅读如何完成高并发/高延迟Web服务调用。它提供了防止HTTP 503状态的可能性。
如果我对你的问题理解正确的话,我希望它能给你一些全局的视角。