2010-06-15 66 views
1

我們需要開發一個通知器組件。它會做的是以給定的時間間隔(比如每隔15分鐘)掃描一次數據庫,查看是否需要發送任何通知。我們應該爲通知組件使用哪個「平臺」?

我們在Windows上運行,所以我們一直在研究Windows服務或Windows任務計劃程序。

我們最關心的是我們實施的穩健性。如果出於某種原因崩潰,是否可以在下一個時間間隔自動重新啓動?我們可以使用自定義日誌記錄邏輯來處理崩潰嗎?

我想就用什麼在這裏:)隨意說,如果你需要更多的信息,做出這樣的猜測的猜測..

道具將給予,如果有人可以做一個短名單Windows服務與Windows任務調度程序的優缺點。另外,應該注意的是,我們並沒有設置其中任何一個,所以如果您有任何替代方案,請張貼。

感謝提前:)

+1

查看此前一個問題:http://stackoverflow.com/questions/390307/windows-service-vs-scheduled-task – 2010-06-15 18:19:03

回答

2

如果你的應用程序並不需要連續運行,也有一些優勢,使用任務計劃。設置起來要容易一些,您可以將應用程序配置爲每15分鐘運行一次,執行查詢,發送通知,安排下一次運行並關閉。但是,如果時間間隔爲15分鐘,那麼最好將其作爲Windows服務來實現,因爲產卵和終止此過程的開銷可能會否定不連續運行的好處。

Windows服務

優勢

  • 可配置爲自動重新啓動(請參閱Service Manager控制面板應用服務的性能)
  • 可配置在運行不同用戶帳戶的上下文
  • 可以遠程啓動,停止
  • 繼續t如果沒有人登錄

缺點ö甚至運行

  • 需要擡高安裝連續
  • 奔跑其可以是或可以不是有利

任務計劃

優勢

  • 可配置在您選擇,包括複雜的調度
  • 的時間表運行的可配置在不同的用戶帳戶

缺點的上下文中運行

  • 如果一個調用失敗,則必須等到下一次調用,或者執行邏輯以適當調整調度