ASP.NET MVC如何正确运用异步编程技术


当前第2页 返回上一页

3.1、在满足以下条件时使用同步管线:

1)、操作很简单或运行时间很短。

2)、简单性比效率更重要。

3)、此操作主要是 CPU 操作而不是包含大量的磁盘或网络开销的操作。 对 CPU 绑定操作使用异步操作方法未提供任何好处并且还导致更多的开销。



3.2、在满足以下条件时使用异步管线:

1)、操作是网络绑定的或 I/O 绑定的而不是 CPU 绑定的。

2)、测试显示阻塞操作对于网站性能是一个瓶颈,并且通过对这些阻塞调用使用异步操作方法,IIS 可对更多的请求提供服务。

并行性比代码的简单性更重要。

3)、您希望提供一种可让用户取消长时间运行的请求的机制。



四、Q&A环节

4.1、既然异步可以大大提供应用程序的响应能力?那么ASP.NET MVC 如果全部用异步控制器(Async Controller),会有什么效果?会成为高吞吐量,高并发的网站么?

仅仅只是把代码加个async事实上不会带来任何性能的提升,必须在需要异步的地方(IO)异步执行才能真正提升吞吐量。异步Controller多用于I/O密集型操作,比如读写数据,且操作之间较为独立;而CPU密集型操作则不适用与异步――无论你是异步处理还是同步处理,最终CPU都会被顶满。所以异步操作确实可以达到提高并发数的效果,但具体还是要看你把它用在哪里。全部使用异步Controller并不会绝对达到提高站点性能的作用。

以上就是ASP.NET MVC如何正确运用异步编程技术的详细内容!

返回前面的内容

相关阅读 >>

core web中使用appsettings.json配置文件的实例详解(asp.net

详解.net 同步与异步 之 mutex

asp.net中中文乱码问题

asp.net core项目配置教程(6)_实用技巧

asp.net core mvc应用程度中如何读取当前url请求参数(querystring)的值?

asp.net关于cookie跨域的问题

asp.net异步触发用法(ajax)

asp.net用控件实现本地图片的显示

mvc页面重定向的asp代码讲解

asp.net core新建项目教程(3)_实用技巧

更多相关阅读请进入《asp.net》频道 >>




打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,您说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

分享从这里开始,精彩与您同在

评论

管理员已关闭评论功能...