我正在构建一个ASP.NET Core Web应用程序,我需要运行一些复杂的任务,需要花费相当长的时间才能完成,从几秒到几分钟。用户不必等待整个任务运行,但是我需要随着任务的进度更新UI。我想到了在ASP.NET服务器中处理这个问题的两种方法:一种使用后台线程,另一种使用单独的进程。我不希望长时间运行的任务会以任何方式妨碍Web应用程序。与过程相比,使用线程是否安全?或者在单独的过程中运行这些任务是一种更好,更高效的方式?在单独的后台线程vs进程中运行长时间后台任务
0
A
回答
4
我想说在另一个过程中。把它放在一个队列中,并有一个单独的进程处理队列,当完成通过发布工作完成消息或其他信息发送信号给Web应用程序。
如果您在Web应用程序内部使用常规线程,并且服务器在进程中间关闭,或者Web应用程序被回收,则可能会产生一些不良影响。
一些其他的选择进行了概述here
0
你应该有不同的想法,在这样的情况总是想着实时通知方法,如signalR,通过它可以激发您的请求,你不必再担心,一旦它已经完成了它会标示你的应用程序,并且你将可以访问你可以根据你的业务操纵的所有数据。访问此链接了解更多信息An Introduction to SignalR
相关问题
- 1. ASP.NET中长时间运行的后台进程 - Application_Start或单独的进程?
- 2. 后台长时间运行的任务
- 3. Python:长时间运行后台进程的spawn或线程?
- 4. 如何在独立进程中运行UWP后台任务?
- 5. 当应用程序进入后台时运行后台线程
- 6. 在Django模型中长时间运行后台线程
- 7. 在java web服务器上运行单独的后台进程
- 8. 在iOS4的后台继续长时间运行的进程
- 9. 在Windows机器上长时间运行PHP的后台进程
- 10. 在后台运行线程
- 11. 前台线程VS后台线程
- 12. 长时间运行android后台服务
- 13. 在后台运行进程
- 14. 重复长时间运行的后台任务在第一次后台任务后没有启动计时器
- 15. 在MVC中使用webbackgrounder nuget长时间运行后台任务
- 16. 长时间运行的后台任务中的Internet访问
- 17. 在长时间运行的过程中在php中创建后台进程
- 18. iPhone中的通用长时间运行后台任务
- 19. ios中长时间运行的后台任务
- 20. 运行的后台任务iOS中长时间与iBeacons
- 21. 在后台实现长时间运行的任务IOS
- 22. 在手机上实现长时间运行的后台任务
- 23. 在iOS中定期在后台线程中运行任务
- 24. 长期运行的后台任务
- 25. 在java中的后台运行线程
- 26. Spotify - 运行后台进程
- 27. WP7后台进程运行
- 28. 运行后台进程
- 29. iOS应用程序运行的后台任务时间
- 30. 在服务器上的后台进程中运行进程