Öncelikle cronjob tam olarak ne iş yapıyor onu açıklamakta fayda var.
Cron belirli bir görevi istediğiniz sıklıklarda tekrarlamak için kullanılan bir araçtır. Sizin komutları ve zamanlamaları verdiğiniz araç ise cronjob. Burada görevi de siz belirlersiniz, zaman aralığını da. Sunucuda dahili olarak yer alan crontab sizin joblarınız işler. Bu bir php betiği de olabilir. Wget ile dosya indirme ya da curl ile başka bir yere bağlanma olabilir. Java uygulaması da çalıştırabilirsiniz, .sh betikleri de. Crontab sadece verdiğiniz komutu çalıştırır. Bekleme yapmaz, javascript çalıştırmaz çünkü bir client değildir. Tarayıcı gibi davranmaz, belirlediğiniz url'ye gidip outputu alır ve işini bitirir. Siz bu outputu isterseniz otomatik olarak silersiniz (/dev/null 'a atarsınız), isterseniz de üzerinde başka işlemler yaparsınız.
Cron için timeout tanımlayabilirsiniz. Sonsuza kadar çalışmasını da sağlayabilirsiniz, belirli bir süre içinde bitirmesini de. Ancak cronun çalıştırdığı betikte ayrıca timeout olabilir. Örneğin php betiği çalıştırıyorsanız (websitesi çağırmaktan bahsetmiyorum) default php.ini ayarlarındaki timeoutu da sonsuz yapmanız gerekir. Cron için timeout ile ilgili şu yazıyı okuyabilirsiniz:
https://ma.ttias.be/limit-runtime-cronjob-script/
Yapmak istediğiniz işlemde verileri çektikten sonra bir yere kaydetmeli, daha sonra o kayıtları ayrı ayrı işlemelisiniz.
Timout süresini siz belirleyemezsiniz 30 saniyeyi geçtiğinde cron job otomatik olarak bağlantıyı kapatıyor ve detayındada timeout olarak belirtiyor. Burada bahsettiği timeout sizin sitenizin verdiği hata değil cron-job.org un verdiği bir hata. Maksimum açılış süresi 30 olmalı buna göre sınırlandırabilirsiniz kodlarınızı.
Konunun cron-job.org ile ilgisi yok. Cron-job.org online bir servis. Burada bahsedilen cronjob ise linux serverlarda dahili olarak yer alan ve cpanel gibi hosting yönetim panellerinde de kolaylıkla eklemeler yapabildiğiniz servis ve timeouta düşmemesi sağlanabilir.