วันอาทิตย์ที่ 10 มิถุนายน พ.ศ. 2555

ตั้งเวลาให้สคริปต์ทำงานด้วย Cronjob


        ผมมีโอกาสได้ทำเว็บไซต์ให้กับลูกค้ารายนึง เขาต้องการให้สามารถลบรายการสั่งซื้อโดยอัตโนมัติ ถ้าหากลูกค้าไม่แจ้งชำระเงินภายใน 7 วัน ผมคิดว่า Hostน่าจะมีServiceของ Cronjob ให้ใช้งาน เพราะ Host ที่ลูกค้าใช้เป็นแบบ Linux แต่ปรากฎว่า Hostไม่มีบริการนี้ให้ใช้ (มารู้ทีหลังว่าเขาใช้ Debian ลินุกซ์ และติดตั้ง VHCS2 (Virtual Hosting Control System) ซึ่งไม่มีบริการนี้ให้ใช้)  ก็เลยเสิร์ทดูใน google เผื่อมีวิธีแก้ปัญหานี้
        และแล้วผมก็เจอเว็บไซต์เว็บนึง ที่ให้บริการCronjobแบบออนไลน์ครับ คือเว็บไซต์ www.setcronjob.com ก็ได้ลองใช้งานดู และสามารถใช้งานแทน Cronjob จากHostของเราได้ครับ เพียงแต่ถ้าเราใช้งานแบบ Free Account จะมีการกำหนด Time Out ได้ไม่เกิน 150 วิ ทำให้ไม่สามารถรันคำสั่งที่ใช้เวลาประมวลผลนานๆได้ เช่น การแบ็คอัพไฟล์,แบ็คอัพฐานข้อมูล เป็นต้น

ผมขออธิบายหน่อยนะคับ ว่า Cronjob คืออะไร
        Cronjob หรือ Crontab คือ TaskScheduled ของระบบปฏิบัติการ Linux/Unix  ใช้สำหรับตั้งเวลาให้โปรแกรมใดๆทำงานหรือให้มันจะรันสคริปต์แบบอัตโนมัติ เช่น รันตอนตีหนึ่งของทุกวัน
        Cronjob มีประโยชน์อย่างมากต่อการการแบ็คอัพไฟล์,แบ็คอัพฐานข้อมูล,ส่งเมล อื่นๆ

มาดูวิธีใช้งานกันเลยครับ Cron Job ในเว็บไซต์www.setcronjob.comกันเลยครับ
1.ไปที่เว็บไซต์ www.setcronjob.com แล้วให้สมัครสมาชิก/ยืนยันอีเมลให้เรียบร้อย และทำการล็อกอินเข้าสู่ระบบ
2.ให้คลิกที่ Create CronJob จะมีPopupแสดงขึ้นมาดังรูป