Zamanlanmış görevlerde ücretsiz çözüm

Zamanlanmış görevler aslında bir çoğumuzun bilgisayar kullanımında aşina olduğu bir terimdir. Bir çok bilgisayar belirli görevleri belirli aralıklar ile yapması gerekir. Örneğin, antivirüsler her gün tarama yapmaları gerekir, mevcut dosyalarımız her gün belirli saatte yedeklenmesi gerekir. Bu işlemler mevcut bilgisayarlarımızda çok kolaylıkla planlanabilir. Fakat internet ortamındaki web sitelerimizde , eğer sitenin bulunduğu sunucuyu yönetemiyorsak, bu işlemleri yapmak son derece zorlaşabiliyor. Bu işlemler için web sitelerinde mevcutta bazı php komutları atamamız ve bu komutların belirli aralıklar ile çalıştırılması gerekmektedir. Bu işlemler için ücretsiz bir websitesi olan cron-job.org bu işlemleri eksiksiz yerine getirmektedir.

Cron-job.org ile sınırsız zamanlanmış görev ve sınırsız web sitesi atamanız mümkün

Sitenizde yapmak istediğiniz yedekleme, haftalık bülten gönderimleri, sitenizin başka bir yere senkronizasyonu veya mevcut sitenize verileri başka bir sunucudan belirli bir aralıklar ile çekmeniz gerekebilir. Veya mevcut bir mail sunucusundan belirli aralıklar ile yeni gelen mailleri çekmek isteyebilirsiniz. Bu işlemleri zamanlanmış görevler atamanız gerekir. Bu zamanlanmış görevler Hosting firmanız tarafından size atanmamış olabilir. Bu gibi durumlarda bu işlemler için en iyi çözüm cron-job.org sitesidir. Bu tür durumlarda kısaca üye olarak rahatlıkla istediğiniz görevin zamanını belirleyebilir ve istediğiniz aralıkta 1 dakikadan 1 yıla kadar ayarlayabilirsiniz. Dilerseniz bu işlemi nasıl yapacağınızı kısa bir örnek ile anlatalım.

Cron-job.org üzerinde zamanlanmış görev oluşturmanın adımları

Öncelikle mevcut sitemizde yapılacak işin tanımlandığı dosyayı oluşturmamız gerekiyor.(bu bölümde yapılacak işlemler web programlama dilleri ve sunucu bilgisi gerektirir. Bu bölüm ile ilgili bilginiz yok ise mevcutta hazır bulunan komut dosyalarını internette bulabilirsiniz.) Bu dosyayı kendimiz girerek web sitesinde denemeliyiz. İlgili dosyaya, şifre ve ek bilgiler varsa girerek, ulaşabiliyor ise cron-job.org sitesine girebiliriz.

 

cronjob1

Siteye girdiğimizde sitede Cron-job.org ile alakalı tüm bilgileri ve neler yapabildiği ana sayfasında anlatılmaktadır. üyelik için kırmızı ile işaretlediğimiz “Signup” ı tıklıyoruz.

 

cronjob2

Bu bölümde siteye kayıt için gerekli bilgileri girmemiz isteniyor. burada dikkat edilmesi gereken Zaman Dilimi bölümü. bu bölümü doğru şekilde girmemiz sayesinde zamanlanmış görevlerimizin herhangi bir sebep ile(sitenin bakım veya başka bir sebeple kapanması, mevcut linke ulaşılamaması gibi durumlarda) görev yerine getirilemediğinde, tam zamanını öğrenmemiz mümkün olabiliyor. kayıt sayfasını doldurduktan sonra belirttiğimiz e-mail adresine gelen aktivasyon linkini tıklayarak cron-job.org sitesine kayıt işlemimizi tamamlıyoruz.

cronjob3

Kayıt sonrasında cron-job.org sitesinde “Members” bölümüne tıklayarak e-posta ve şifreniz ile giriş yapabilirsiniz.

cronjob4

Cronjobs bölümüne tıkladığımızda yukarıdaki sayfa açılacaktır. burada kırmızı ile işaretlediğimiz Create Cronjobs’ı tıklayarak yeni oluşturacağımız zamanlanmış görev sayfasına gidiyoruz. buradan sonrasında görev tanımının tüm detaylarını açılan sayfada yapacağız.

cronjob5

Bu sayfada zamanlanmış görevin tüm ayarlarını yapacağız. Öncelikle Title ve Adress bölümünü doldurmamız gerekiyor. Title birden fazla görev vereceğimiz için her görevi tanımlamamız gerekiyor(Örnek: A Sitesinin Haftalık Yedeklemesi). Adress bölümünde yapılacak görevin çalıştırılacağı script linkini veriyoruz(Bu linki öncesinde tekrar deneyerek erişim sağlanabiliyor mu kontrol etmenizde fayda var.) . Yapılan işlemin güvenlik gerektirdiği durumlarda(örnek: haftalık mail atması için yapılan bir scriptin her dk tıklanarak mail flood oluşturması v.b.g.) “Requires HTTP Authentication” seçilerek mevcut script’e kullanıcı adı ve şifre ile ulaşılması sağlanmaktadır. Bu şekilde güvenli bir şekilde scriptlerinize erişim sağlanabilir. “Schedule” Yapılacak görevin zamanlama bölümüdür. Bu bölüm 4 seçenekten oluşmaktadır.

  • Dakika Ayarı:  1 dakika ile 60 dakika arasında bir süre verilerek kısa süre aralığı olan görevler için kullanılır.(e-mail sunucularından mail çekme işlemi gibi)
  • Gün Ayarı: Bu bölümde her gün belirli bir saatte tek sefer işlem yapılması için bulunmaktadır. (Sunucu yedekleme veya senkronizasyon işlemleri için kullanılmaktadır.)
  • Ay Ayarı: Ayın herhangi bir günü ve saati için ayarlama yapmaya yarar. Her ayın aynı günü ve saati işlem tekrarlanır. (Mevcut sitenin raporlaması veya aylık sıfırlanması gereken işlemler için kullanılmaktadır.)
  • Kullanıcı Tanımlı: bazı durumlarda haftanın hangi günleri,saatleri yapılacağını kullanıcının tanımlaması gerekmektedir. Örneğin bazı görevleri sadece 2 günde 1 yapılması gerekiyor ise buna göre tanımı kullanıcı tanımlı bölümden yapılabilmektedir.(sitenin yedeğini 2 günde 1 almak veya mevcut yazıların başka bir yerden toplanması için verilen zamanlamalar için kullanılabilir.)

Kısacası bu bölümde tüm zamanlama işlemlerini cron-job.org sitesinin bize verdiği esneklikle istediğimiz şekilde tanımlayabiliyoruz.

Notifications bölümünde ise verdiğimiz görev ile alakalı bize mail olarak bilgilendirme durumları için işaretliyoruz. Sırasıyla,

  • Görev Hata verdiğinde e-mail atması için,
  • Görev Hata verdikten sonra tekrar çalışmaya başladığında e-mail atması için,
  • Görev çok fazla hata aldığında devre dışı bırakılıp e-mail atması için,

son ayarda dikkat etmemiz gerekiyor. burada çok kez hata alırsa sunucu işlemi bırakmasını ve e-mail atmasını sağlanıyor. cron-job.org sitesine girip gerekli görevin tekrar başlatılması gerekiyor.

Save Responses işaretlendiğinde, her görev işlemi yapıldıktan sonra sitenin yapılan işlem ile alakalı verdiği bilgiyi yapılan işlem kayıtları içerisine kayıt etmesini sağlıyıor(örneğin bir yedekleme işleminde işlem bitiminde kaç dk da yaptığı bilgisini veriyor ise bunu kayıt ediyor.)

Sonuç olarak bu işlemleri tek bir siteden sınırsız görev atayarak yapabilmek hem kullanışlı, hemde hızlı bir işlem yapmamızı sağlıyor. Basit kullanım arayüzü ile Cron-Job.org gerçekten yapmamız gereken zamanlı işleri en kısa sürede otomatik hale getirerek işlemleri kolaylaştırıyor. ayrıca mevcut sitelerimizin içinde yapılacak zamanlanmış görevler için ekstra bir maliyet olmadan yapabilmek için en önemli artısı.


Bir yanıt yazın