در عصر تکنولوژی ، انسان ها همواره به دنبال دست یابی به راهکارها و ابداع روش های جدید و کارآمد برای انجام کارهایشان هستند ؛ چراکه زمان به ارزشمندترین سرمایه هر فرد تبدیل شده است.
کلمه کرون Cron از واژه یونانی Cronus) Κρόνος) به معنای زمان الهام گرفته شده است.
Cron نام یک ابزار و برنامه در سیستم عامل های مبتنی بر UNIX (همچون لینوکس) است که بوسیله آن میتوان اجرای فرمان ها و کامندها را با تعیین زمان و تاریخی در آینده و یا به صورت بازه های تکرارشونده بطور خودکار برنامه ریزی نمود ؛ به طوری که دیگر نیازی به اجرای دستی هرباره دستورات توسط کاربر وجود نداشته باشد.
همانطور که اشاره شد Cron غالبا روی سیستم عامل های مبتنی بر یونیکس مورد استفاده کاربران قرار گرفته و در سیستم عامل ویندوز با نام Scheduled Tasks به معنای “دستورات زمان بندی شده ” شناخته می شود.
گاه ممکن است شما برای مدیریت وبسایتتان نیازمند آن باشید که یک فرمان مشخص را در زمان تعیین شده به اجرا درآورید ؛ به عنوان مثال شاید بخواهید که به طور هفتگی از دیتابیس خود بک آپ گرفته،آن را آپدیت یا در موارد ساده تر مثلا به کاربران خود ایمیل اطلاع رسانی ارسال کنید.
اما در همین ابتدا بیایید تا با تعریف برخی از اصطلاحات رایج ، مبحث را آغاز کنیم .
تعریف CronTab , Cron و CronJob
Cron
نام ابزاری است که به وسیله آن کاربران میتوانند فرمان ها و اسکریپت های موردنظر خود را تعریف کرده تا در زمان و یا بازه های مشخص اجرا شوند.
CronTab
به فایل حاوی دستورات و اطلاعات موردنظر گفته می شود که محل این فایل بسته به سیستم عامل مورد استفاده کاربر متفاوت است.
فایل های کرون تب به دو دسته تقسیم میشوند :
- فایل های کرون تب سیستمی
- فایل کرون تب شخصی کاربر
CronJob
به دستورات و کامندهای تعریف شده در فایل CronTab گفته میشود که اطلاعات دقیقی از برنامه تعریف شده و زمان مورد نظر برای اجرای آن بدست می دهد.
کاربردها و مزیت های استفاده
گاهی نیاز است که شما در یک بازه زمانی مشخص کارهای متفاوتی را به انجام برسانید.
سرور هاست وبسایت میتواند با استفاده از Cron ها به شما در این زمینه یاری رسانی کند ؛ به طور مثال همانطور که در مقدمه به آن اشاره شد میتوان از Cron برای دستورات متناوب نظیر بک آپ گیری هفتگی از دیتابیس یا اطلاعات ،ارتقای سیستم به همراه آخرین الصاقات امنیتی آن ، چک کردن فضای استفاده شده دیسک ، ارساال ایمیل و … استفاده نمود. کرون جاب ها تا دقیقه ، ساعت ، روز ، هفته و… و همچنین ترکیبی از این ها قابل زمان بندی هستند.
جدا از کارآمدی و سودمندی های CronJob در ارائه چنین خدماتی که با تعیین زمان اجرای آنها صورت میگیرد ، به طور کلی امروزه با استفاده از این ابزار هر کار زمان بندی شده ای آسان تر از هر زمان دیگری انجام می گیرد.
اجزاء سازنده کرون جاب (CronJob)
یک کرون جاب از سه بخش اساسی تشکیل میشود که عبارت است از :
متن دستورات (Script)
اولین جزء سازنده یک CronJob متن دستور است که برای اجرای فرمان ها فراخوانی میشود و درواقع همان دیتابیس CronJob است.
برنامه (Schedule)
زمان و تاریخی که Script های تعریف شده در آن اجرا خواهند شد.
گزارش (Action)
گزارش خروجی های حاصل از اجرای دستورات را Action میگویند که وابسته به آن است که اسکریپت با چه منظوری تعریف شده باشد.
استفاده از ابزار Cron در وردپرس
استفاده از ابزار Cron در وردپرس گاهی محدودیت هایی را در بیشتر سرویس های اشتراکی برایمان بوجود می آورد؛ با وجود آنکه غالب برنامه های زمان بندی در وردپرس شامل ارسال پست های تایم بندی شده و آپدیت پوسته ها و افزونه ها و همچنین ارسال ایمیل های یادآوری همگی از این طریق انجام میشوند. برای رفع این مشکل با استفاده از افزونه هایی(Plugin) میتوانیم ابزار Cron را راحت تر و بهتر مدیریت کرده و از امکانات آن نهایت استفاده را ببریم.
در ادامه یکی از افزونه های Cron مورد استفاده برای wordpress را با یکدیگر مختصرا بررسی میکنیم :
WP-Cron
یکی از مزیت های WP-Cron در مقایسه با کرون سیستم ها ، از دست ندادن دستورات زمان بندی شده است ؛ در این صورت که برنامه مشخص شده که با استفاده از کرون زمانبندی شده است به هر دلیلی اجرا نشود، برنامه به کلی از دست خواهد رفت؛ اما با استفاده از WP-Cron ، برنامه در لیست انتظار باقی مانده و بعدا اجرا خواهد شد و بدین ترتیب هیچ برنامه از پیش مشخص شده ای از دست نخواهد رفت.
اما باید به اینکه مهم اشاره کرد که از آنجا که با ورود هر بازدیدکننده ای به وبسایت شما فایل WP-Cron.php یک بار اجرا میشود ، اگر تعداد بازدیدکنندگان شما زیاد باشد ، مشکلات زیادی از جمله کندشدن بارگزاری سایت بوجود خواهد آمد.
امیدوارم که این مطلب براتون مفید و کاربردی بوده باشه…