13.2. Az időzített feladatok beállítása
Ellenőrizzük, hogy a webhely üzemszerű működésének szempontjából fontos időzített feladatok rendszeresen futnak-e. Ezenkívül gondoskodunk a megfelelő időközönként való meghívásukról vagy az alaprendszer Automated cron moduljával vagy pedig a webhelyen kívülről indítva őket.
Nyissuk meg webhelyünk Állapotjelentését (lásd: 12.5. szakasz - Alapfogalom: állapotjelentés), és keressük meg rajta az időzítő adatait, hogy mikor futott le utoljára.
Ha a webhely annak idején a Standard (vagy magyarul Általános) profillal volt telepítve, akkor az időzített feladatok már valószínűleg megfelelően (alapértelmezés szerint háromóránként) futnak az Automated Cron modulnak köszönhetően.
E ponton döntenünk kell, hogyan kívánjuk időzíteni ezen rendszerkritikus műveletek lefutását a jövőben. Alapvetően két lehetőségünk van:
- A webhelyet működtető Drupal saját magát hívja meg időnként, vagy
- Egy külső eszközt bízunk meg ugyanezzel a feladattal.
A megalapozott döntéshez tudnunk kell mindkét lehetőség előnyeit és hátrányait. Az alaprendszer Automated cron modulja („A” opció) nem mindig alkalmas bizonyos webhelyek esetén:
- A modul ugyanis annyit csinál, hogy valahányszor egy látogató lekér egy oldalt a webhelytől, akkor a kért oldal előállításán kívül ez a modul is lefut, és ellenőrzi, hogy mennyi ideje futottak le utoljára az időzített feladatok. Ha több, mint a beállított időköz, akkor meghívja őket automatikusan. Ebből az következik, hogy ha a webhelynek alacsony a látogatottsága (vagy egyáltalán nincs), akkor ez a folyamat ritkán (vagy akár soha) nem játszódik le.
- A fent vázolt működési mód azt is jelenti, hogy az időzített feladatok végrehajtására csak azután kerülhet sor, hogy a látogató által kért oldal előállítása már megtörtént. Mivel a webkiszolgálók csak egy előre megadott időkeretet szánnak egy-egy kérés feldolgozására (pl. a PHP-szkriptek végrehajtására), ezért ha maga az oldalgenerálás sok időt vett igénybe, akkor előfordulhat, hogy az időzített feladatok elvégzésére már alig (vagy semmi) fennmaradó idő nem jut ebből az időkeretből. Ilyen esetben a rendszernapló (lásd: 12.4. szakasz - Alapfogalom: a rendszernapló) hibákat fog tartalmazni, melyből értesülhetünk, hogy nem volt teljes az oldallekéréshez hozzáfűzött feladatok végrehajtása.
- Bár elhanyagolható mértékben, de szintén hátrányosan érinti a skálázhatóságot, hogy a webkiszolgáló folyamatainak egyikét lefoglalja az időzített feladatok futtatása, és ezen idő alatt ez a folyamat nem tud látogatói kérésekre válaszolni.
A fent leírtak ellenére az Automated cron modul által kínált funkcionalitás megfelelő lehet kis és közepes forgalmú webhelyeken, ezért ha a használata mellett döntünk, először is győződjünk meg róla, hogy telepítve van-e a webhelyünkön? (Az Általános telepítési profillal biztosan engedélyezve lett, más esetben pedig a 4.3. szakasz - Modulok telepítése leírás segíthet.)
Ezt követően állítsuk be, milyen gyakran futtassa az időzített feladatokat. Válasszuk ki a Kezelés adminisztrátori menüben a Konfiguráció > Rendszer > Időzítő menüpontot, vagy írjuk be a címsorba az admin/config/system/cron) útvonalat. A legördülő menüből válasszuk ki a kívánt értéket, majd kattintsunk a Beállítások mentése gombra.

Ha azonban a fenti érveket megfontolva úgy döntünk, hogy az időzített feladatokat a webhelyen kívülről indíttatjuk („B” opció), akkor javasolt letiltani az Automated cron modult, mivel nem lesz rá szükség (ehhez lásd a 4.4. szakasz - Nem használt modulok letiltása részt). Ezután keressük meg az időzített feladatok webcímét az előző lépésnél is megnyitott Időzítő oldalon. Valószínűleg ehhez hasonlóan fog festeni: http://pelda.hu/cron/0MgWtfB33FYbbQ5UAC3L0LL3RC0PT3RNUBZILLA0Nf1Re
Valahányszor ezt a speciális URL-t meghívják, a webhely időzített feladatai lefutnak. Így már könnyen be tudunk állítani valamilyen külső eszközt ennek kezelésére:
- A Cron daemon Linux, OS X, Solaris és BSD operációs rendszereken futó webkiszolgálókhoz (leírás angol nyelven).
- A Scheduled Tasks Windows operációs rendszereken futó webkiszolgálókhoz (leírás angol nyelven).
- Fizetős szolgáltató SASS (software as a service, azaz „szoftver szolgáltatásként”) formában.
-
A tárhelyszolgáltató által nyújtott
cronkezelő, aminek a tárhely dokumentációjában nézhetünk utána.
- Running Drupal cron tasks from Drush (azaz „A Drupal időzített feladatainak futtatása Drushsal”) című dokumentáció angol nyelven.
- Setting up cron (azaz „A cron beállítása”) című közösségi dokumentáció a Drupal.org-on szintén angol nyelven.
Közreműködők
Írta és szerkesztette: Dave Hansen-Lange (Advomatic), Boris Doesborg és Jennifer Hodgdon. Fordította: Balu Ertl (Brainsum).
Source file: security-cron.asciidoc
Help improve this page
You can:
- Log in, click Edit, and edit this page
- Log in, click Discuss, update the Page status value, and suggest an improvement
- Log in and create a Documentation issue with your suggestion