微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

c# – ASP.NET MVC异步操作:谁等待结果?

参见英文答案 > When should you use Async Controllers in ASP.NET MVC?                                    2个
我正在尝试熟悉TPL并在mvc中使用它.在所有指南中看起来都很好(将操作标记为异步,使用await =>利润!)但我真的不明白.

据我所知,调用链看起来像这样:客户端发送http请求→Web服务器获取请求→mvc操作处理程序使用路由规则查找控制器和操作并执行它→操作将结果写入响应.

但是:路由器等待行动的魔力是什么?谁(以及如何?)处理此链中的第一个异步方法

解决方法

我将按照我的理解尝试解释:

谁在等待:您的服务器,例如IIS.路由器没有像魔术那样做任何事情,只是通过简单的mvc管道运行,在其中一个级别上执行一次长时间操作.

如何等待:如果你知道你的应用程序有一些长时间运行的任务,你应该
更改Web服务器中的某些配置以实现高并发性.您可以阅读它是如何在那里完成的Server Configuration for High Concurrency/High Latency Web Service Calls.它为您提供了阻止HTTP 503状态的可能性.

如果我理解你的问题,我希望它能提供一些全球性的观点.

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐