實務上常會有獨立 Service 需要每幾分鐘或每小時執行特定工作,如呼叫 API 抓資料並寫進其他資料庫,在後端可使用 Node Cron 完成。
Version
Node 12.4.0
Node-cron 2.0.3
Add Package
$ yarn add node-cron
node-corn
:安裝node-cron
執行 cron jobs
Node-cron
import { schedule } from 'node-cron'
schedule('*/5 * * * *', () => console.log('yes'))
從 node-cron
import 出 schedule()
。
# ┌────────────── second (optional)
# │ ┌──────────── minute
# │ │ ┌────────── hour
# │ │ │ ┌──────── day of month
# │ │ │ │ ┌────── month
# │ │ │ │ │ ┌──── day of week
# │ │ │ │ │ │
# │ │ │ │ │ │
# * * * * * *
第一個 argument 可指定 shedule()
行為,若要每 5 分鐘執行一次,可採用 */5
。
第二個 argument 為 callback,傳入要執行 function。
Conclusion
- Node Cron 非常簡單好用,尤其第二個 argument 為 callback,方便 Ramda 組合 function