• Optimera PHP-Prestanda på Linux med Opcache

    I dagens snabbrörliga webbutveckling är prestanda en kritisk faktor för att säkerställa en smidig användarupplevelse och effektiv resursanvändning på servern. PHP (Hypertext Preprocessor) är ett av de mest populära serversideskriptsspråken, men när applikationer växer i komplexitet kan det bli nödvändigt att optimera dess prestanda. En av de mest effektiva metoderna för detta är att använda Opcache, en inbyggd opcode-cachemekanism för PHP. Denna artikel guidar dig genom vad Opcache är, varför det är viktigt, och hur du installerar och konfigurerar det för optimal prestanda på en Linux-server.

    Vad är Opcache?

    Opcache är en mekanism som förbättrar PHP:s prestanda genom att cacha den kompilerade bytekoden av PHP-skript i delat minne. När en PHP-sida laddas, analyserar och kompilerar PHP först skriptet till bytekod som sedan exekveras. Denna process kan vara resurskrävande, särskilt för stora och komplexa applikationer.

    Med Opcache sparas den kompilerade bytekoden i minnet, vilket innebär att PHP inte behöver analysera och kompilera skriptet vid varje förfrågan. Istället hämtas den cachade versionen direkt från minnet, vilket avsevärt minskar svarstider och minskar belastningen på servern. Detta resulterar i snabbare webbapplikationer och en mer effektiv användning av serverresurser.

    Fördelar med att Använda Opcache

    • Snabbare Svarstider: Genom att undvika upprepad kompilering av PHP-skript minskar svarstiderna avsevärt.
    • Minskad Serverbelastning: Färre resurskrävande operationer leder till lägre CPU- och minnesanvändning.
    • Skalbarhet: Möjliggör hantering av fler samtidiga förfrågningar utan att öka serverbelastningen.
    • Enkel Installation och Konfiguration: Opcache är inbyggt i PHP och kan enkelt aktiveras och konfigureras.

    Installera Opcache på Linux

    Uppdatera Paketförrådet

    Innan du installerar Opcache är det viktigt att uppdatera ditt paketförråd för att säkerställa att du har den senaste informationen om tillgängliga paket.

    För Debian/Ubuntu-baserade system:

    sudo apt update

    För RHEL/CentOS-baserade system:

    sudo dnf update

    Installera Opcache

    För Debian-baserade system som Ubuntu kan du installera Opcache med följande kommando:

    sudo apt install php-opcache

    För RHEL/CentOS-baserade system använder du:

    sudo yum install php-opcache

    Efter installationen kan du verifiera att Opcache är installerat korrekt genom att köra:

    php -m | grep opcache

    ELLER

    php -i | grep opcache

    Om du ser opcache i utskriften betyder det att installationen har lyckats.

    Konfigurera Opcache

    För att Opcache ska fungera optimalt behöver du konfigurera dess inställningar i PHP:s konfigurationsfil (php.ini). Följ stegen nedan för att göra detta:

    Hitta php.ini-filen

    För att hitta platsen för din php.ini-fil, kör:

    php --ini

    Detta kommando visar sökvägen till konfigurationsfilen som PHP använder.

    Redigera php.ini

    Öppna php.ini med din favorittextredigerare, till exempel Nano eller Vim:

    sudo vi /etc/php.ini

    Lägg till eller Uppdatera Opcache-Inställningar

    Lägg till eller ändra följande Opcache-inställningar i php.ini:

    ; Aktivera Opcache
    opcache.enable=1
    
    ; Ställ in minnesstorlek för Opcache (t.ex. 128MB)
    opcache.memory_consumption=128
    
    ; Ställ in maximalt antal skript som ska cachas
    opcache.max_accelerated_files=10000
    
    ; Ställ in hur ofta (i sekunder) Opcache kontrollerar efter uppdateringar
    opcache.revalidate_freq=2
    
    ; Aktivera validering av filer för uppdaterade skript
    opcache.validate_timestamps=1
    
    ; Ange maxfilstorlek för cachning
    opcache.max_file_size=2M
    
    ; Aktivera Opcache för kommandoradsgränssnittet (CLI)
    opcache.enable_cli=1

    Förklaring av Inställningarna

    • opcache.memory_consumption: Mängden minne som tilldelas för Opcache. Justera detta baserat på din servers tillgängliga RAM.
    • opcache.max_accelerated_files: Det maximala antalet PHP-skript som Opcache kan cacha.
    • opcache.revalidate_freq: Hur ofta (i sekunder) Opcache kontrollerar om skript har ändrats.
    • opcache.validate_timestamps: Om aktiverat, kontrollerar Opcache om skript har uppdaterats och uppdaterar cachen vid behov.
    • opcache.max_file_size: Den maximala storleken på filer som kan cachas.
    • opcache.enable_cli: Gör det möjligt att använda Opcache även i kommandoradsgränssnittet.

    Spara och Stäng Filen

    Efter att ha gjort ändringarna, spara filen och stäng textredigeraren.

    Starta om Webbservern

    För att ändringarna ska träda i kraft behöver du starta om din webbserver.

    För Apache:

    sudo systemctl restart apache2

    ELLER

    sudo systemctl restart httpd

    För Nginx:

    sudo systemctl restart nginx

    Testa Opcache

    För att säkerställa att Opcache fungerar korrekt kan du skapa en PHP-informationssida.

    Skapa info.php

    Skapa en fil kallad info.php i webbserverns dokumentrot (t.ex. /var/www/html/) med följande innehåll:

    <?php
    phpinfo();
    ?>

    Åtkomst till info.php

    Öppna din webbläsare och navigera till http://din-server/info.php. Leta efter sektionen ”Opcode Caching” eller ”Opcache” i utskriften. Om Opcache är korrekt installerat och konfigurerat, kommer du att se detaljerad information om dess inställningar och status.

    Övervaka Opcache

    För att övervaka Opcache-prestanda och få insikt i cache-statistik kan du använda verktyg som opcache-gui.

    Installera opcache-gui

    Klonar repository och flyttar det till webbserverns dokumentrot:

    git clone https://github.com/amnuts/opcache-gui.git
    sudo mv opcache-gui /var/www/html/

    Åtkomst till opcache-gui

    Öppna din webbläsare och navigera till http://din-server/opcache-gui/ för att se en visuell representation av Opcache-statistiken.

    Alternativ: Använda Kommandoraden

    Du kan också använda kommandoraden för att få detaljerad information om Opcache-status:

    php -i | grep opcache

    Detta kommando visar information relaterad till Opcache, inklusive minnesanvändning och cache-hit-rate.

    Slutsats

    Att installera och konfigurera Opcache på din Linux-server är ett effektivt sätt att förbättra PHP-applikationers prestanda. Genom att cacha den kompilerade bytekoden minskar du serverns belastning och förbättrar svarstiderna, vilket leder till en bättre användarupplevelse. Med enkel installation och konfiguration är Opcache en oumbärlig komponent för alla som strävar efter optimal PHP-prestanda.

    Mer om OPcache i vår wiki där vi har översätt PHP Manualen till Svenska

    https://wiki.linux.se/index.php/OPcache

    Vill du ha bilder och mer info så rekommederas den här artikel på Engelska

    https://www.tecmint.com/install-opcache-optimize-php-performance/#google_vignette

Optimera PHP-Prestanda på Linux med Opcache

I dagens snabbrörliga webbutveckling är prestanda en kritisk faktor för att säkerställa en smidig användarupplevelse och effektiv resursanvändning på servern. PHP (Hypertext Preprocessor) är ett av de mest populära serversideskriptsspråken, men när applikationer växer i komplexitet kan det bli nödvändigt att optimera dess prestanda. En av de mest effektiva metoderna för detta är att använda Opcache, en inbyggd opcode-cachemekanism för PHP. Denna artikel guidar dig genom vad Opcache är, varför det är viktigt, och hur du installerar och konfigurerar det för optimal prestanda på en Linux-server.

Vad är Opcache?

Opcache är en mekanism som förbättrar PHP:s prestanda genom att cacha den kompilerade bytekoden av PHP-skript i delat minne. När en PHP-sida laddas, analyserar och kompilerar PHP först skriptet till bytekod som sedan exekveras. Denna process kan vara resurskrävande, särskilt för stora och komplexa applikationer.

Med Opcache sparas den kompilerade bytekoden i minnet, vilket innebär att PHP inte behöver analysera och kompilera skriptet vid varje förfrågan. Istället hämtas den cachade versionen direkt från minnet, vilket avsevärt minskar svarstider och minskar belastningen på servern. Detta resulterar i snabbare webbapplikationer och en mer effektiv användning av serverresurser.

Fördelar med att Använda Opcache

  • Snabbare Svarstider: Genom att undvika upprepad kompilering av PHP-skript minskar svarstiderna avsevärt.
  • Minskad Serverbelastning: Färre resurskrävande operationer leder till lägre CPU- och minnesanvändning.
  • Skalbarhet: Möjliggör hantering av fler samtidiga förfrågningar utan att öka serverbelastningen.
  • Enkel Installation och Konfiguration: Opcache är inbyggt i PHP och kan enkelt aktiveras och konfigureras.

Installera Opcache på Linux

Uppdatera Paketförrådet

Innan du installerar Opcache är det viktigt att uppdatera ditt paketförråd för att säkerställa att du har den senaste informationen om tillgängliga paket.

För Debian/Ubuntu-baserade system:

sudo apt update

För RHEL/CentOS-baserade system:

sudo dnf update

Installera Opcache

För Debian-baserade system som Ubuntu kan du installera Opcache med följande kommando:

sudo apt install php-opcache

För RHEL/CentOS-baserade system använder du:

sudo yum install php-opcache

Efter installationen kan du verifiera att Opcache är installerat korrekt genom att köra:

php -m | grep opcache

ELLER

php -i | grep opcache

Om du ser opcache i utskriften betyder det att installationen har lyckats.

Konfigurera Opcache

För att Opcache ska fungera optimalt behöver du konfigurera dess inställningar i PHP:s konfigurationsfil (php.ini). Följ stegen nedan för att göra detta:

Hitta php.ini-filen

För att hitta platsen för din php.ini-fil, kör:

php --ini

Detta kommando visar sökvägen till konfigurationsfilen som PHP använder.

Redigera php.ini

Öppna php.ini med din favorittextredigerare, till exempel Nano eller Vim:

sudo vi /etc/php.ini

Lägg till eller Uppdatera Opcache-Inställningar

Lägg till eller ändra följande Opcache-inställningar i php.ini:

; Aktivera Opcache
opcache.enable=1

; Ställ in minnesstorlek för Opcache (t.ex. 128MB)
opcache.memory_consumption=128

; Ställ in maximalt antal skript som ska cachas
opcache.max_accelerated_files=10000

; Ställ in hur ofta (i sekunder) Opcache kontrollerar efter uppdateringar
opcache.revalidate_freq=2

; Aktivera validering av filer för uppdaterade skript
opcache.validate_timestamps=1

; Ange maxfilstorlek för cachning
opcache.max_file_size=2M

; Aktivera Opcache för kommandoradsgränssnittet (CLI)
opcache.enable_cli=1

Förklaring av Inställningarna

  • opcache.memory_consumption: Mängden minne som tilldelas för Opcache. Justera detta baserat på din servers tillgängliga RAM.
  • opcache.max_accelerated_files: Det maximala antalet PHP-skript som Opcache kan cacha.
  • opcache.revalidate_freq: Hur ofta (i sekunder) Opcache kontrollerar om skript har ändrats.
  • opcache.validate_timestamps: Om aktiverat, kontrollerar Opcache om skript har uppdaterats och uppdaterar cachen vid behov.
  • opcache.max_file_size: Den maximala storleken på filer som kan cachas.
  • opcache.enable_cli: Gör det möjligt att använda Opcache även i kommandoradsgränssnittet.

Spara och Stäng Filen

Efter att ha gjort ändringarna, spara filen och stäng textredigeraren.

Starta om Webbservern

För att ändringarna ska träda i kraft behöver du starta om din webbserver.

För Apache:

sudo systemctl restart apache2

ELLER

sudo systemctl restart httpd

För Nginx:

sudo systemctl restart nginx

Testa Opcache

För att säkerställa att Opcache fungerar korrekt kan du skapa en PHP-informationssida.

Skapa info.php

Skapa en fil kallad info.php i webbserverns dokumentrot (t.ex. /var/www/html/) med följande innehåll:

<?php
phpinfo();
?>

Åtkomst till info.php

Öppna din webbläsare och navigera till http://din-server/info.php. Leta efter sektionen ”Opcode Caching” eller ”Opcache” i utskriften. Om Opcache är korrekt installerat och konfigurerat, kommer du att se detaljerad information om dess inställningar och status.

Övervaka Opcache

För att övervaka Opcache-prestanda och få insikt i cache-statistik kan du använda verktyg som opcache-gui.

Installera opcache-gui

Klonar repository och flyttar det till webbserverns dokumentrot:

git clone https://github.com/amnuts/opcache-gui.git
sudo mv opcache-gui /var/www/html/

Åtkomst till opcache-gui

Öppna din webbläsare och navigera till http://din-server/opcache-gui/ för att se en visuell representation av Opcache-statistiken.

Alternativ: Använda Kommandoraden

Du kan också använda kommandoraden för att få detaljerad information om Opcache-status:

php -i | grep opcache

Detta kommando visar information relaterad till Opcache, inklusive minnesanvändning och cache-hit-rate.

Slutsats

Att installera och konfigurera Opcache på din Linux-server är ett effektivt sätt att förbättra PHP-applikationers prestanda. Genom att cacha den kompilerade bytekoden minskar du serverns belastning och förbättrar svarstiderna, vilket leder till en bättre användarupplevelse. Med enkel installation och konfiguration är Opcache en oumbärlig komponent för alla som strävar efter optimal PHP-prestanda.

Mer om OPcache i vår wiki där vi har översätt PHP Manualen till Svenska

https://wiki.linux.se/index.php/OPcache

Vill du ha bilder och mer info så rekommederas den här artikel på Engelska

https://www.tecmint.com/install-opcache-optimize-php-performance/#google_vignette