iT邦幫忙

0

請問要怎麼發到期信

  • 分享至 

  • xImage

目前小弟用Golang進行後端開發

但是需要用到在一年後寄到到期信給使用者,通知即將要到期了
目前只想到用robfig/cron實作,有人可以推薦我要怎麼實作可以更好嗎

CRON
cron 還有 anacron 會輔助cron
http://linux.vbird.org/linux_basic/0430cron.php#anacron_1
在大多數情況下是已經足夠做例行性作業,一個不夠,也可以多設定幾個,使用不同週期.
另外要注意的怎樣判斷日期型態的資料.
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

1 個回答

0
whitefloor
iT邦研究生 2 級 ‧ 2021-06-03 14:25:29

我會把時間資料存DB
用time.Ticker設定看多久觸發一次撈資料的排程
到DB去撈資料出來判斷要不要寄信給他

cron有時候缺點是蠻多的
像是這種N久才執行一次的
要是你那時候剛好關機/當機/重開,總之沒執行到
就要等下一次N久之後才執行

用time.Ticker還能去檢查在column裡面的flag
沒寄出成功過沒多久檢查到還能直接補救

看更多先前的回應...收起先前的回應...
nexiye iT邦新手 5 級 ‧ 2021-06-03 17:02:51 檢舉

感謝大大!!!原來還有這樣的作法

nexiye iT邦新手 5 級 ‧ 2021-06-03 21:23:23 檢舉

對了,不好意思再問一個問題,所以是短時間類型的比較適合用cron這類型的寫法是嘛??

whitefloor iT邦研究生 2 級 ‧ 2021-06-08 14:47:10 檢舉

看你需求,只是cron會有這個問題
假設你一年才執行一次
例如2021-01-01 12:00:00
沒執行到你就得等到,2022-01-01 12:00:00

或是可以改一種做法
你的cron是跟time.Ticker一樣當作循環時間週期去觸發handler使用的
就沒這問題

whitefloor iT邦研究生 2 級 ‧ 2021-06-08 14:58:10 檢舉

另外是cron的時間字串要另外去解讀
很難從code直接看出來

nexiye iT邦新手 5 級 ‧ 2021-06-08 16:22:50 檢舉

喔喔,瞭解了
我在使用cron的確會有這些問題
那使用scheduler這個包怎麼樣?
會推薦使用這個包嗎?

whitefloor iT邦研究生 2 級 ‧ 2021-06-08 17:15:10 檢舉

這我沒用過
通常我比較偏好一些小功能或是基本功能用standard package的功能去做其實就很夠了

nexiye iT邦新手 5 級 ‧ 2021-06-08 20:41:34 檢舉

好的!感謝你那麼有耐心地回覆我!

我要發表回答

立即登入回答