2013-10-16 57 views
4

我們在120秒睡眠的無限循環中對預定作業進行了編碼。計劃任務是在網站上進行ping以獲取一小部分數據。在我們的解決方案中使用cron作業的優點/缺點是什麼?一個cron工作在無限循環運行中,cron作業的優點/缺點是什麼?

+1

的答案將是http更好的來源: //superuser.com。這個問題是系統管理員經常處理的問題。 –

+0

好提示@theTinMan – SamTalks

回答

2

優點:

  • 您更輕鬆地擁有在運行時轉換控制。您可以控制將執行的分鐘,小時,星期等等
  • 編寫代碼和管理其操作更容易。它消除了任務中的循環和計時邏輯,並且您運行crontab來更改計時或將其關閉。
  • 當系統沒有運行時,它不會佔用系統中的內存。

    • 它沒有被重新啓動的開銷:
    • 如果失敗並退出出於某種原因,它會再次在適當的時機成熟了無限循環的

    優勢啓動每次需要它

我認爲有關CPU實時和內存的優點/缺點在這種情況下可能很小。但我更喜歡cron作業,因爲它可以控制執行時間和管理的簡便性,因此可以無限期地運行任何事情。

+1

使用cron作業的最大優點之一是編寫代碼並設置好運行的簡便性。它與系統定期觸發的普通命令行工具沒什麼兩樣。不需要設置'chkconfig'腳本,不需要init.d,只需要一個crontab條目。 –

+0

@theTinMan的確,我對「易於管理」的評論是關於如何輕鬆設置它來運行和編碼。我對此並不十分清楚。 – lurker

3

建立一個程序,民意調查遠程站點提供這些問題/益處,

  • 的缺陷(未處理的異常),程序可能會失敗,並停止輪詢
  • 在程序中可能導致延遲時間滑動(> 120秒延遲)
  • 分離的顧慮 - 與程序邏輯混合輪詢的調度使得更多的代碼(和更多的機會失敗)
  • DRY - 爲什麼(重新)建立的cron功能時,它已經存在
  • 程序必須在內存中坐,即使不使用它(1/120秒)

cron是定期調度而建,這裏有一些問題/益處,

  • 克龍已經建成,並作品,非常可靠
  • 提供環境和日誌輸出需要照顧
  • 兒童節目必須每120秒
  • 的Cron不檢查其他程序/服務器/ dependenci重啓ES
  • 的Cron沒有信號/啓動下游依賴性
  • 的Cron不提供緊調度約束(均未子第二,也不接近實時)