Pengaturan Magento Advanced / System / Cron *

9

Ringkasan

Jadi saya ingin mengkonfirmasi pemahaman saya tentang konfigurasi cron dengan Magento; di bawah admin admin System > Configuration > Advanced > System > Cron:

Hasilkan Jadwal Setiap #

Saya tidak yakin tentang pengaturan ini.

Jadwalkan ke Depan untuk #

Saya berasumsi ini akan menjadwalkan # menit lebih awal dari crons. Jika penjadwal cron dikonfigurasi di tab cron untuk dijalankan setiap 5 menit, apakah nomor ini juga harus dikonfigurasi ke 5 atau apakah Magento tidak akan menjadwal ulang pekerjaan yang sudah dijadwalkan?

Hilang jika Tidak Berlari Dalam #

Ini muncul bagi saya seolah-olah mengatakan kapan cron dijadwalkan untuk berjalan dan tidak dieksekusi dalam # menit itu ditetapkan sebagai 'tidak terjawab'.

Pembersihan Sejarah Setiap #

Saya membayangkan ini harus berjalan melalui cron_Scheduletabel dan membersihkan semua jadwal terjawab dan dieksekusi # menit setelah mereka dieksekusi / terjawab?

Riwayat Sukses Seumur Hidup #

Berkenaan dengan konfigurasi sebelumnya saya menganggap ini akan menghapus semua jadwal yang sukses setelah # menit?

Riwayat Kegagalan Seumur Hidup #

Saya menganggap ini akan menghapus semua jadwal yang terlewatkan setelah # menit? dan kemudian history cleanup every #, success history and failure historypengaturan semua sepenuhnya ambigu.

Abu
sumber

Jawaban:

7

Hal yang membingungkan tentang layanan cron Magento adalah bahwa, sementara mereka dipanggil oleh cron sistem, mereka diabstraksikan tingkat lain di atasnya dalam model acara / pengamat yang umum di seluruh Magento.

Setelah Anda memahami hal ini, pengaturannya menjadi lebih masuk akal. Jika Anda ingin melihat apa yang mereka lakukan dengan tepat, penggunaannya cukup jelas app/code/core/Mage/Cron/Model/Observer.php, yaitu pengamat yang dipicu untuk defaultacara dalam crontablingkup dan pada gilirannya mengirimkan semua pekerjaan yang dijadwalkan.

  • Hasilkan Jadwal Setiap : Interval menit saat Magento akan menjadwalkan pekerjaan di masa depan. Itu tidak secara otomatis menjadwalkan pekerjaan selama setiap eksekusi.
  • Jadwalkan ke Depan untuk : menit di masa depan bahwa pekerjaan dapat dijadwalkan (ditambahkan ke cron_scheduleantrian basis data).
  • Terjawab jika Tidak Berjalan Dalam : menit melewati waktu yang dijadwalkan bahwa pekerjaan masih dapat dieksekusi sebelum statusnya ditetapkan missed, yang mulai berlaku jika antrian membutuhkan waktu lama untuk melewati semua pekerjaan yang telah dipilih untuk dijalankan selama eksekusi saat ini Mage_Cron_Model_Observer::dispatch()(waktu yang dijadwalkan sekarang atau sebelumnya).
  • Riwayat Pembersihan Setiap : interval menit ketika Magento akan melakukan pembersihan pada cron_scheduleantrian basis data, membuat referensi ke pengaturan di bawah ini tentang retensi.
  • Riwayat Sukses Seumur Hidup & Kegagalan Riwayat Seumur Hidup : menit di masa depan untuk meninggalkan catatan dalam antrian setelah mereka mencapai status ini. Ini berperan jika Anda ingin melihat hasil pekerjaan sebelumnya karena mereka mungkin telah menempatkan hasil yang dihasilkan cron_schedule.messages, yang dapat sangat membantu dalam hal errorstatus.
fantastis
sumber
mengapa jika perubahan ahead_for_scehdule dari 1 menjadi 10, tidak ada jadwal yang ditambahkan ke crontab?
LucScu
Defaultnya adalah:schedule_generate_every 15 schedule_ahead_for 20 schedule_lifetime 15 history_cleanup_every 10 history_success_lifetime 60 history_failure_lifetime 600
Collin Anderson