Drupal is een populaire , open-source content management systeem , maar soms zijn kracht is ook zijn zwakte . Iedereen kan de functionaliteit van Drupal uit te breiden of , als ze ervoor kiezen , bewerkt u de kern van scripts . Echter, deze veranderingen loops in de logica van de software creëren . In een poging om een oplossing te vinden , begint de software om meer en meer van de server resources verbruiken tot er niets meer over . Bijgevolg is de website bevriest , en de hardware kan niet meer reageren . Als dit bij u gebeurt , moet u deze op hol geslagen processen oplossen . Wat je nodig hebt tekst editor FTP client SSH client Toon Meer Aanwijzingen Heb je de oorzaak rol 1 terug eventuele recente wijzigingen . Als dat Drupal de snelheid en het reactievermogen verhoogt , de nieuwe code bevat van het probleem . Kopen van 2 Onderzoek uw server processen . In een Linux- build , run "top" om te zien wat is consumeren middelen . In een Windows- build , lanceren de Process Monitor . Als de meest consumptieve proces is " mysql " of " mysqld " dan zult u weten dat de database - gerelateerde . Beoordeling 3 uw Drupal logs . Kijk voor identieke , herhaalde berichten . Met behulp van de paden verwezen , werken via de modules om te ontdekken wat er triggering hen. 4 Controleer uw server logs om te zien of iemand kunstmatig triggering een periodiek proces (dat wil zeggen , " poormanscron " ) aan verbruiken bronnen op uw server . Implementeer een oplossing 5 Verwijder oneindige lussen in bijgedragen code . Bijvoorbeeld , als je een " drupal_goto ( ) ; " -functie op een pagina die verwijst naar pagina twee , en twee pagina bevat zijn eigen " drupal_goto ( ) ; " terug naar pagina een, zult u een oneindige lus te maken . Het verwijderen van een van de gewraakte functies zullen de op hol geslagen proces in uw bijgedragen code te elimineren . Vereenvoudig geheugen - intensieve acties 6 ( zoals database- en string zoekopdrachten) . Bijvoorbeeld kan een mySQL query die elk knooppunt zoekt en geeft een grote hoeveelheid gegevens te veel geheugen verbruiken . In dit geval , te beperken MySQL query's om specifieke knooppunt typen of knooppunt creatie data en beperken de geretourneerde gegevens . Verhoog PHP 's 7 memory_limit uitkering . In bepaalde omstandigheden kan een op hol geslagen proces een probleem niet na het verhogen van de toegestane hoeveelheid geheugen . De " Drupal : Verhoog Memory Limit" document , aangeboden als onderdeel van de Drupal installatie gids , is de definitieve bron voor het maken van deze verandering 8 Verbied buitenstaanders uit triggering geheugen - intensieve processen, zoals search indexering . . Als Drupal 's toestemming raster voldoende granulariteit niet biedt , kunt u dit ook doen door het gebruik van de server en file-based permissies met behulp van het besturingssysteem van de host- machine ( dwz , " chmod " voor Linux ) . U kunt ook IP - gebaseerde blokkering binnen de server software (zoals Apache ) om te voorkomen dat anderen bemoeien met prestaties van uw site .
|