上下文:我設置了一個圖片上傳網站。每次用戶上傳照片時,我都需要對這些上傳進行操作。ASP.NET MVC中的後臺線程'job-queue'
在SO的其他用戶的幫助下,我得出結論,我需要一個接受這些「處理工作」的後臺線程,所以我可以快速返回響應給用戶,讓後臺線程工作這些背景工作。
我有點對線程解決方案「設置」,而不是一個服務實例,因爲它不可能爲我設置web服務器上的服務。我已經閱讀了一些關於消息隊列和後臺線程的內容,但是我真的需要的是關於如何繼續的一些實用指針。
另外 - 有什麼我應該知道的事情嗎?在我頭頂,我正在考慮線程的數量,如果線程太多,可能會遇到IIS或服務器的問題?這就是爲什麼我認爲它應該是每個用戶的單個後臺線程,而不是每個工作的線程,因爲可能會一次上傳很多照片。所以每個用戶需要一個線程來照顧像時尚這樣的「隊列」中的工作。我離開基地嗎?
我只是會說,如果你想一個IIS進程你要去陷入困境中做異步工作。服務是你應該使用的,因爲你的web服務器不是銀彈。認爲你的Web服務器是後臺任務的地方是根本錯誤的。 – 2011-05-23 06:58:07
我寧願自己走服務路線,但由於這是不可能的,我不得不考慮線程。 – Dynde 2011-05-23 07:12:32
@Dynde - 你知道線程不是一種選擇,它是生活中的一個事實,你會以任何方式進行線程化。請問爲什麼這是不可能的?爲什麼你不能在Web應用程序中使用Windows服務? – 2011-05-23 07:28:05