我們應該使用Windows服務嗎?
我正在構建一個客戶端服務器項目(c#),並且服務器應該單獨工作而沒有任何用戶,所以有人建議我使用Windows服務來運行服務器,是嗎?還是有更好的解決方案?我們什麼時候使用windows服務?
5
A
回答
6
在你情我願用服務爲以下原因:
- 你並不需要有一個會話保持運行。這對安全性很好,並且還可以減少服務器上的開銷。
- 你得到一些建於同治命令的免費
- 開始
- 停止
- 暫停
- 繼續
- 您可以處理服務器事件,如關機。
1
您應該創建一個Windows服務在後臺運行的代碼,而無需用戶交互。
例如,Windows服務將即使沒有人登錄上運行。
接受連接(如郵件,Web或FTP服務器)的任何服務器通常應該是一個Windows服務。
7
Windows服務正常使用時,應用程序需要連續運行。例如,如果他們需要:
- 等待傳入的請求。 (就像通過遠程或WCF)
- 監控隊列,文件系統等
如果一個程序只需要定期運行,比如一天一次。創建計劃任務通常更容易。
6
Windows服務能夠儘快機器加電時開始運行,這使得非常適合運行的,例如服務器,HTTP服務器。沒有人需要登錄。
1
好了,Windows服務爲您的應用程序工作,而你希望它保持活躍一個完整的框架,所以我覺得它的確定。
1
Windows服務是用於應該運行所有的時間,在一個用戶是否登錄一些正確的事情。
如果你需要的東西,沒有一個活躍的用戶登錄的運行,你需要使用Windows服務。
1
當您需要應用程序開始運行時,即使沒有人物理登錄到計算機(這在服務器計算機中很常見),在這種情況下服務是很好的選擇。特別是因爲可以將服務配置爲自動啓動,這意味着服務將在機器重新啓動且無人爲干預時啓動。
然而,如果你是想託管Web服務(WCF),而服務是一種選擇,你可以考慮在IIS託管,這免除了您編寫實際的代碼託管等
相關問題
- 1. 我們什麼時候需要在我們的Angular2服務上使用@Injectable?
- 2. 什麼時候我們使用let rec?
- 3. Android:我們什麼時候使用getIntent()?
- 4. 我們什麼時候使用XMLSerialization?
- 5. 什麼時候我們應該在IIS中託管WCF服務,以及我們應該在什麼時候託管一個Windows服務?
- 6. 我們什麼時候知道我們應該使用符號?
- 7. flink Windows,它們什麼時候啓動
- 8. 什麼是BigInteger,我們什麼時候可以使用它?
- 9. 什麼是SWC,什麼時候/我們在Flash中使用SWC
- 10. 什麼時候NFC服務停用?
- 11. 我們什麼時候需要創建代理服務,什麼時候需要創建Rest Api?
- 12. 爲什麼使用id的時候我們只能使用NSObject?
- 13. 什麼是服務總線,我什麼時候需要一個?
- 14. 什麼時候應該停止服務
- 15. 什麼時候startService()停止了服務?
- 16. 什麼時候執行服務的onStartCommand
- 17. 什麼時候可以卸載Windows服務可執行文件?
- 18. 我們什麼時候應該上課,什麼時候不應該上課
- 19. KineticJS:我什麼時候使用toImage()以及什麼時候使用緩存()
- 20. 我們應該什麼時候在C#中使用事件
- 21. 我們什麼時候使用Statemant或PreparedStatement?
- 22. Twisted,gevent eventlet - 我什麼時候可以使用它們
- 23. 什麼時候我們在css中使用media-queries「resolution」?
- 24. 日曆add()vs roll()我們什麼時候使用它?
- 25. 我們什麼時候在iPhone SDK中使用@class
- 26. 我們什麼時候在角度中使用樣式和ngstyle?
- 27. 我們應該什麼時候使用jQuery append()和appendTo()?
- 28. 我們什麼時候需要使用.NET Remoting?
- 29. 我們什麼時候需要使用Mockito的驗證方法?
- 30. 我們什麼時候使用QMutexLocker重新鎖定和解鎖?
如果你有一個服務去的,確保你不會彈出消息對話框或任何東西。看起來像常識,但我多次看到應用程序是作爲一個通用應用程序開發的,其中消息框等用於調試,然後將其作爲服務進行部署,而無需刪除這些調試對話框。 – 2010-05-21 17:30:52