Installeer en configureer OPcache voor PHP-prestaties op CentOS 7

Een van de meest gebruikte programmeertalen van vandaag door miljoenen gebruikers is PHP, wat handig en praktisch is voor applicatie-ontwikkeling en te vinden is in alle webhostingservers die tegenwoordig beschikbaar zijn.

Een van de voordelen van het gebruik van PHP zijn de geweldige opties om verschillende extensies in hun standaarddistributie te gebruiken; waarmee het gebruik van PHP voor de ontwikkeling van de applicaties gefaseerd wordt uitgebreid. Een van deze extensies is OPcache, die helpt bij het verbeteren van de algehele prestaties van PHP.

Het is om deze reden dat Solvetic vandaag en door middel van deze studie zal uitleggen hoe OPcache in CentOS 7 kan worden geïnstalleerd en geconfigureerd om nog productiever te zijn met PHP.

Wat is OPcache?OPcache is ontwikkeld om de prestaties van PHP te verbeteren door de bytecode van een voorgecompileerd script in het gedeelde geheugen op te slaan, waardoor de PHP-taal zelf de scripts in elk verzoek niet hoeft te laden en analyseren, wat uiteindelijk wordt vertaald in betere prestaties .

OPcache is opgenomen in PHP-versie 5.5.0 en hoger en is beschikbaar via PECL voor PHP-versies 5.2, 5.3 en 5.4.

Er is geen externe bibliotheek nodig om deze PHP-extensie te compileren, dus deze is beschikbaar voor alle distributies waar PHP probleemloos draait.

1. Hoe OPcache op CentOS 7 Linux te installeren

Stap 1
Eerst gaan we de EPEL-repository installeren en vervolgens de REMI-repository met behulp van de volgende opdrachten:

 yum install epel-release yum install http://rpms.remirepo.net/enterprise/remi-release-7.rpm
We voeren de letter s in om de download en installatie te bevestigen.

VERGROTEN

Stap 2
Later moeten we de bijbehorende GPG-sleutels accepteren:

VERGROTEN

Stap 3
De volgende stap is het installeren van yum-utils, een verzameling hulpprogramma's om de standaardfuncties van yum uit te breiden, dankzij hen zal het mogelijk zijn om yum-repositories te beheren, evenals pakketten zonder handmatige configuratie en nog veel meer taken, voor hun installatie voeren we het volgende uit:

 yum installeer yum-utils

VERGROTEN

Stap 4
Later moeten we de download en installatie van de pakketten bevestigen:

VERGROTEN

Stap 5
Nu, wanneer yum-utils is geïnstalleerd, moeten we yum-config-manager gebruiken om de Remi-repository in te schakelen als de standaardrepository om verschillende versies en modules van PHP te installeren, we voeren het volgende uit op basis van de gewenste versie:

Voor PHP 5.5

 yum-config-manager --remi-php55 inschakelen

Voor PHP 5.6

 yum-config-manager --remi-php56 inschakelen

Voor PHP 7.0

 yum-config-manager --remi-php70 inschakelen

Voor PHP 7.1

 yum-config-manager --remi-php71 inschakelen

Voor PHP 7.2

 yum-config-manager --remi-php72 inschakelen 

VERGROTEN

Stap 6
Ten slotte gaan we verder met het installeren van de OPcache-extensie en verifiëren we de PHP-versie om te bevestigen dat we de OPcache-extensie hebben geïnstalleerd, hiervoor gebruiken we de volgende opdrachten. We accepteren de download en installatie van OPcache.

 yum installeer php-opcache

VERGROTEN

Stap 7
We verifiëren de versie van PHP en dat deze OPcache heeft. Let op de onderste regel met Zend OPcache v7.0.5, dit geeft aan dat Opcache correct is geïnstalleerd op CentOS 7.

VERGROTEN

2. Opcache-extensie configureren op CentOS 7 Linux


Stap 1
De laatste stap is om OPcache te configureren door het bestand /etc/php.d/10-opcache.ini of /etc/php.d/opcache.ini (al naargelang het geval) te bewerken met onze gewenste editor:
 nano /etc/php.d/opcache.ini
Daar kunnen we de volgende waarden toepassen om betere PHP-prestaties te verkrijgen:
 opcache.enable_cli = 1 opcache.memory_consumption = 128 opcache.interned_strings_buffer = 8 opcache.max_accelerated_files = 4000 opcache.revalidate_freq = 60 opcache.fast_shutdown = 1

VERGROTEN

We slaan de wijzigingen op met behulp van de volgende sleutels:

Ctrl + O

We verlaten de editor met de volgende toetsen:

Ctrl + X

Stap 2
We gaan verder met het herstarten van de webserver door een van de volgende regels uit te voeren:

 systemctl herstart nginx OF systemctl herstart httpd
In het bestand opcache.ini zijn er de volgende variabelen met hun respectievelijke gebruik:

Met deze optie wordt de opcode-cache ingeschakeld. Indien uitgeschakeld, wordt de code niet geoptimaliseerd of in de cache opgeslagen

 opcache.boolean inschakelen

Deze optie schakelt opcode-cache in voor de CLI-versie van PHP

 opcache.enable_cli boolean

Beheert de grootte van de gedeelde geheugenopslag die wordt gebruikt door OPcache, in megabytes

 opcache.memory_consumption geheel getal

Zijn functie is om de hoeveelheid geheugen te beheren die wordt gebruikt om strings op te slaan, in megabytes.

 opcache.interned_strings_buffer integer

Het is jouw taak om het maximale aantal sleutels in de OPcache-hashtabel te beheren, de minimale waarde is 200 en de maximale waarde is 100000 in PHP <5.5.6 en 1000000 in latere versies.

 opcache.max_accelerated_files geheel getal

Verwijst naar het maximale percentage verspild geheugen dat is toegestaan ​​voordat een herstart op de extensie is gepland.

 opcache.max_wasted_percentage geheel getal

Door het in te schakelen, kan OPcache de huidige werkdirectory aan de scriptsleutel toevoegen, waardoor mogelijke botsingen tussen bestanden met dezelfde basisnaam worden geëlimineerd.

 opcache.use_cwd boolean 

Als het is ingeschakeld, zal OPcache elke opcache.revalidate_freq seconden naar bijgewerkte scripts zoeken.

 opcache.validate_timestamps boolean

Meet de frequentie van het controleren van Unix-tijdstempels van op update gebaseerde scripts, in seconden opcache.revalidate_path boolean: indien uitgeschakeld, zullen bestaande cachebestanden die hetzelfde include_path gebruiken opnieuw worden gebruikt door OPcache.

 opcache.revalidate_freq integer

Indien uitgeschakeld, worden alle documentatie-opmerkingen uit de opcode-cache verwijderd om de grootte van de geoptimaliseerde code te verkleinen.

 opcache.save_comments boolean

Met zijn activering wordt een snelle uitschakelvolgorde gemaakt die op zo'n manier wordt gebruikt dat niet elk toegewezen blok wordt vrijgegeven, maar afhankelijk is van de Zend Engine-geheugenbeheerder om het afsluiten van PHP te optimaliseren.

 opcache.fast_shutdown boolean

Het is een bitmasker dat bepaalt welke optimalisatierechten worden uitgevoerd door OPcache

 opcache.optimization_level integer

Het is een hack die alleen moet worden ingeschakeld om fouten te voorkomen "Kan klasse niet opnieuw declareren

 opcache.dups_fix boolean

Geeft de maximale bestandsgrootte aan die in de cache wordt opgeslagen, in bytes

 opcache.max_file_size geheel getal

Verwijst naar de hoeveelheid tijd om te wachten op de start van een geplande herstart als de cache niet actief is, in seconden

 opcache.force_restart_timeout geheel getal

De OPcache-foutlogboeken worden daar opgeslagen

 opcache.error_log string

Het is het hoofdgeheugenmodel dat OPcache zal gebruiken

 opcache.preferred_memory_model string

Jouw taak is om het gedeelde geheugen te beschermen tegen onverwachte schrijfacties tijdens het uitvoeren van scripts

 opcache.protect_memory boolean

Zijn functie is om OPcache API-functies alleen aan te roepen vanuit PHP-scripts waarvan het pad begint met de opgegeven tekenreeks

 opcache.restrict_api string

De algemene functies van OPcache zijn:

Het zorgt voor het compileren en cachen van een PHP-script zonder het uit te voeren

 opcache_compile_file

Krijgt configuratie-informatie over de cache

 opcache_get_configuration

Geeft toegang tot statusinformatie over de cache

 opcache_get_status

Een in de cache opgeslagen script ongeldig maken

 opcache_invalidate

Geeft aan of een script in de cache is opgeslagen in OPcache

 opcache_is_script_cached

Hiermee kunt u de inhoud van de opcode-cache resetten

 opcache_reset

Zoals we kunnen zien, zal deze PHP-extensie nuttig zijn om de prestaties van deze taal aanzienlijk te verbeteren en dus op een veel uitgebreidere manier te werken.

wave wave wave wave wave