Cron-oversigt

cron-Cron udfører specifikke opgaver for cronpress-drevne sites. Navnet Cron kommer fra det unikke system til planlægning af job, der spænder fra en gang i minuttet til en gang om året. Uanset om det er rutinemæssig vedligeholdelse eller planlagte advarsler, kan enhver kommando, der kan udføres uden brugerintervention, planlægges som en Cron-opgave.Cron er af samme art som Cron, men adskiller sig på et par meget vigtige måder. Denne funktion er udelukkende designet til at håndtere rutineopgaver:

  • kontroller for ny version af kernen, temaer og plugins
  • Ryd op spam

Plugins og temaer kan tilføje opgaver, der skal udføres med jævne mellemrum. For eksempel, hvis du har et plugin, der scanner kvidre til dine kvidre og derefter inkorporerer dem i kommentarer, er det sandsynligvis gjort med et job. Vi åbner op for en helt ny verden af ting, som en hjemmeside kan gøre.

hvordan udløses VP-Cron?

den største forskel mellem Cron og Cron er, hvordan cron udløses. Cron er en systemproces, der kører hvert minut og ser efter opgaver, der skal udføres. Cron, fordi det er et internetbaseret system, kan kun køre, når nogen besøger siden. Derfor, når nogen navigerer til din hjemmeside, kontrollerer for at se, om der skal gøres noget. Takket være kerneudviklerne gør den det på en måde, der ikke påvirker ydeevnen på din hjemmeside negativt.

problemer med lav trafik sider

lav trafik sider kan opleve sprunget opgaver, når denne funktion udløses af besøgende. Hvis folk ikke besøger din hjemmeside, kan ikke udføre. Dette betyder ikke, at din side vil være langsom fra tidligere job, når nogen til sidst besøger din side. Uanset hvor mange opgaver, der skal udføres, køres de i baggrunden, så din hjemmesides ydeevne ikke påvirkes negativt.

problemer med hjemmesider med høj trafik

Hvis din hjemmeside har høj trafik, kan du støde på problemer med hjemmesiden. De vigtigste problemer, der kommer op, er løbsbetingelser og langvarige processer.

  • Race tilstand: Når mere end en bruger besøger din hjemmeside og får cron til at udføre den samme opgave. Cron arbejder hårdt for at eliminere raceforhold, men de kan stadig ske, især på steder med høj trafik.
  • Lang køreproces: enhver opgave, der tager længere tid end standard 60 sekunder at køre. Udviklere kan justere, hvor længe en PHP-opgave får lov til at køre med funktionen set_time_limit(). Hvis dette er indstillet til at være længere end vinduet mellem opgaver, kan du ende med mere end en kopi af wp-cron.php udførelse.

begge disse problemer behandles inden for VP-Crons interne låsning og er ikke almindelige problemer; de kan dog stadig lejlighedsvis ske.

Administrer VP-Cron internt

VP-Cron kommer forudkonfigureret og klar til at køre, så du ikke behøver at gøre noget for at aktivere det på dine VP-sider.flere opgaver konfigureres automatisk under den første installation. Du kan bruge et par enkle kommandoer fra kommandolinjen eller et af flere plugins til at finde de nøjagtige job, der køres af VP-Cron.

CLI

Hvis du har Terminus installeret, kan du nemt se alle detaljer om, hvad der foregår med CLI. Kan vise dig detaljer som:

  • hvad er planlagt til at køre
  • hvad vil køre næste
  • de begivenhedskroge, der er oprettet

Du kan også planlægge dine egne job, udføre eksisterende job og administrere næsten alt, hvad der er relateret til HP-Cron—alt fra kommandolinjen.

en af de første ting, du vil gøre, er at teste VP-Cron for at sikre, at alt fungerer korrekt. Når du udfører kommandoen nedenfor, skal du sørge for at erstatte SITE_NAME med dit stednavn fra dit Pantheon-Dashboard og erstatte ENV_NAME med det ønskede miljø (“dev”, “test”, “live” eller multidev-filialnavn).

terminus wp <site>.<env> -- cron test

Hvis alt fungerer korrekt, ser resultatet sådan ud:

Success: WP-Cron spawning is working as expected.

Dette lader dig vide, at CP-Cron fungerer korrekt på din side. Herfra kan du køre enhver cron-relateret kommando med VP-CLI. Når du bruger Terminus til at administrere dit Pantheon-hosted, skal du bruge Terminus. Kommandoformatet er som følger:

terminus wp <site>.<env> -- cron <your wp-cron command and switches here>

alleterminus wp kommandoer kræver et stednavn og miljø for at fungere.

Bemærk

hvis du har beskyttet din hjemmeside ved hjælp af sikkerhedsindstillingen på dit Dashboard, kan Terminus ikke udføre cron, og du kan se statusrapportfejl på dashboardet.

Plugins

Hvis du ikke kan lide kommandolinjen, er der flere plugins, du kan bruge. Crontrol, for eksempel, vil vise dig alle de begivenheder, der er planlagt til din hjemmeside. Du kan oprette, redigere, køre eller slette job med det samme fra dit admin dashboard. Du kan også tilslutte nye handlinger til tidsplaner eller flytte eksisterende handlinger til nye tidsplaner fra afsnittet Værktøjer.cron Manager Lite vil gøre et lignende job med en lidt anden brugergrænseflade. Dette plugin kræver, at du foretager en engangsinstallation af rammen, som du kan gøre direkte fra plugin manager-siden.

Administrer cron-Cron eksternt

Hvis du leder efter mere kontrol over din sides cron-job, eller du ikke ønsker, at cron-cron skal håndtere opgaver internt, kan du bruge eksterne Cron ‘ er i stedet. Dette vil løse de problemer, der er diskuteret ovenfor for høj trafik og lav trafik sites.

Deaktiver VP-Cron

den første ting, du skal gøre, er at deaktivere VP-Crons interne behandling. Tilføj følgende linje til din wp-config.php fil:

VP-konfiguration.php
define('DISABLE_WP_CRON', true);

Bemærk

der er mange vigtige opgaver, som VP-Cron tager sig af, så vær forberedt på at gennemføre alle nedenstående trin.

gratis tjenester

når du har deaktiveret VP-Cron, skal du bruge en tjeneste, der kalder en URL med jævne mellemrum. Den nemmeste måde at gøre dette på er at oprette en konto med en gratis cron-tjeneste:

  • EasyCron
  • Set Cron Job
  • cron-job

enhver af ovenstående tjenester får jobbet gjort. Ved at deaktivere VP-Cron har du slået den automatiske kontrol og opkald af wp-cron.php scriptet fra. Du bliver nu nødt til at ringe til denne URL selv ved hjælp af en af ovenstående tjenester. Med de fleste af dem er det så nemt som dette:

  1. Opret en konto
  2. Opret et job, der kalder https://yourdomain.tld/wp-cron.php?doing_wp_cron

Bemærk

Erstat `yourdomain.TLD ‘ med dit domæne.

afhængigt af hvilken tjeneste du bruger, kan du muligvis oprette flere job på forskellige tidspunkter. Oprettelse af et enkelt job, der kalder dit sted wp-cron.php script hvert 15.minut er alt hvad du skal bruge. Cron tager sig af resten. Hvis du opretter nye tidsplaner, der skal køres oftere end en gang hvert 15.minut, skal du justere dit job i overensstemmelse hermed.

det er vigtigt, at du ikke tilføjer en værdi tildoing_wp_cron forespørgselsvariablen; den skal være tom for, at cron fungerer korrekt.

brug af din egen Server

Hvis du administrerer din egen server, kan du bruge cron-tjenesten til at foretage et opkald tilwp-cron.php script. Du bliver nødt til at lære at oprette et Cron-job korrekt og bruge noget som wget eller curl for at hente en hjemmeside. Medmindre du tager særlige forholdsregler, er det ikke sikrere at bruge din egen server vs. en internetbaseret cron-tjeneste; det giver dig dog mere kontrol.

sikkerhed

for det meste wp-cron.php er sikker. Der er kun en parameter, du kan videregive, der vil påvirke scriptet (doing_wp_cron). Dette$_GET værdi filtreres ikke; det bruges kun som et flag og ikke som input til en proces eller variabel. Ud over det ignoreres alle input.

mens intet script på en server, der er knyttet til internettet, er 100% sikkert, wp-cron.php har i øjeblikket ingen kendte sårbarheder eller udnyttelser.

Cron Plugins

har mange plugins, der styrer både interne cron-opgaver og eksterne cron-job. Da Pantheon ikke leverer cron-tjenester, anbefaler eller fraråder vi ikke brugen af et givet plugin. Vi opfordrer dig til at tjekke listen over Plugins og eksperimentere i dit Dev-miljø for at finde det, der bedst passer til dine behov.

Skriv et svar

Din e-mailadresse vil ikke blive publiceret.