บันทึกการใช้งาน gocron สำหรับงาน schedule ด้วยภาษา Go
--
ในการพัฒนาระบบ บางครั้งมีความต้องการการทำงานซ้ำๆ เช่น ทุกๆ 5 นาที หรือเมื่อถึงวัน/เวลาที่กำหนด เรามักจะเรียกสิ่งนี้ว่า schedule job หรือ cronjob นั่นเอง
วันนี้ได้มีโอกาสใช้งาน gocron
ซึ่งเป็น package ที่ช่วยสร้าง cronjob/scheduler ในภาษา Go การใช้งานนั้นง่ายมากๆ ไปดูกันเลย
โจทย์ : ต้องการงาน 3 งาน
- งานที่ 1 ให้ทำทุกๆ 5 นาที ทุกวัน
- งานที่ 2 ทำทุกๆ นาทีที่ 15 และ 45 ของแต่ละชั่วโมง
- งานที่ 3 ทำทุกๆวินาทีที่ 30 ของแต่ละนาที
จะได้โปรแกรมภาษา Go ที่เขียนง่ายๆ หน้าตาแบบนี้
ในงานที่ 2 และ 3 จะเห็นว่าเป็นหน้าตาที่ค่อนข้างประหลาด สิ่งนี้เรียกว่า cron expression
สามารถศึกษาเพิ่มเติม หรือดูตัวอย่างได้ที่นี่ https://crontab.guru/
ที่เหลือก็เอาไปประยุกต์กับงานตัวเองกันดูครับ
happy coding ครับผม