Pregled automatizovanih Cron zadataka
Konfiguracija cron zadataka je važan korak pri postavljanju veb-sajta i pomaže u održavanju resursa sajta za rezultate pretrage, proveru ažuriranja Drupal kernela i modula, kao i uklanjanje privremenih fajlova.
Ispravno konfigurisan cron zadatak upravlja mnogim zadacima:
- Ažurira indeks sadržaja sajta koji koristi modul pretrage.
- Osvježava redove u redovima čekanja koje koristi modul agregatora.
- Proverava dostupnost ažuriranja za modul menadžera ažuriranja.
- Obavlja uobičajene zadatke održavanja, kao što je brisanje starih zapisa iz logova, za sistemski modul.
Šta je cron?
Cron je demon koji izvršava komande u definisanim intervalima. Te komande se nazivaju „cron zadaci“. Cron je dostupan na Unix, Linux i Mac serverima. Windows serveri koriste planirani zadatak za izvršavanje komandi. Pravi „cron zadatak“ je vremenski iniciran događaj koji obično (i najefikasnije) pokreće hosting server vašeg sajta, ali se može podesiti i na udaljenom serveru ili čak sa vašeg lokalnog računara.
U suštini, cron zadatak posećuje fajl cron.php na vašem sajtu putem URL-a, na primer http://www.example.com/cron.php?cron_key=0MgWtfB33FYbbQ5UAC3L0LL3RC0PT3RNUBZILLA0Nf1Re. Tačna lokacija fajla cron.php se može pronaći u izveštaju o statusu na stranici Administracija> Izveštaji> Izveštaj o statusu (admin/reports/status) u odeljku Cron zadaci održavanja.
Uključivanje cron zadataka
Najjednostavniji način je da dozvolite Drupalu da to uradi za vas (što je podrazumevano), koristeći ugrađeni sistem „automatizovanog cron“-a. Možete upravljati „automatskim cron-om“ putem Administracija> Konfiguracija> Sistem> Cron (admin/config/system/cron). Podrazumevana frekvencija je na svaka tri sata. Nakon toga, cron će biti pokrenut od strane korisnika koji posećuju vaš sajt, ali ne češće od svakih tri sata. Imajte u vidu da sajtovi sa manjim saobraćajem možda žele da kreiraju sopstveni cron zadatak. Ako želite da isključite automatski cron, promenite padajući meni „Pokreni cron svakih“ na „Nikada“.
Automatizovani cron sistem je kompatibilan sa svim sistemima jer zapravo ne koristi sistemski cron demon. Radi tako što proverava na kraju svakog Drupal zahteva kada je poslednji put cron pokrenut, i ako je prošlo previše vremena, izvršava cron zadatke kao deo tog zahteva. Dva nedostatka: (1) cron zadaci se izvršavaju samo kada Drupal obrađuje zahteve; i (2) „teret“ (obrada i memorija) izvršavanja cron zadataka se dodaje nekom proizvoljnom, nepoznatom zahtevu stranice, što može usporiti te zahteve i potencijalno dovesti do prekoračenja memorijskog limita na složenom sajtu.
Drugi način (koji važi za bilo koju verziju Drupala) je kreiranje cron zadatka ili korišćenje nekog drugog spoljnog (izvan Drupala) metoda za pokretanje cron zadataka, kao što su servisi za zakazivanje cron zadataka poput EasyCron ili Cronless. Ovo je pouzdaniji metod (jer se uvek izvršava po rasporedu) i koristi manje resursa (jer obrada cron-a nije deo zahteva stranice). Zbog toga je ovaj metod obično preporučen za pokretanje cron zadataka kad god imate izbor. Imajte na umu da ako kreirate cron zadatak, možete potpuno isključiti ugrađeni sistem „cron“.
Isključivanje „automatskog cron“-a
Iz razloga performansi ili ako želite da cron bude pokretan samo spoljnim okidačem, možda ćete želeti da isključite automatizovani cron sistem.
Možete ga isključiti tako što ćete podesiti opciju „Pokreni cron svakih“ na „Nikada“ (npr. u Administracija> Konfiguracija> Sistem> Cron (admin/config/system/cron)).
Drugi način da isključite cron u Drupalu 8 je da u fajl settings.php dodate sledeći red:
$config['automated_cron.settings']['interval'] = 0;
Imajte na umu da ovo zaključava podešavanje admin/config/system/cron na „Nikada“ i korisnici sa administratorskim pravima ne mogu promeniti ovu vrednost.
Drupal’s online documentation is © 2000-2020 by the individual contributors and can be used in accordance with the Creative Commons License, Attribution-ShareAlike 2.0. PHP code is distributed under the GNU General Public License.