Maison  >  Article  >  développement back-end  >  Introduction à la gestion de la mémoire en php

Introduction à la gestion de la mémoire en php

不言
不言avant
2019-03-27 09:43:562855parcourir

Cet article vous apporte une introduction à la gestion de la mémoire en PHP. Il a une certaine valeur de référence. Les amis dans le besoin peuvent s'y référer.

1. Présentation de la gestion de la mémoire PHP - Moteur Zend

La mémoire de l'ordinateur étant gérée par le système d'exploitation, les applications ordinaires ne peuvent pas accéder directement à la mémoire.

Les applications ne peuvent demander de la mémoire qu'au système d'exploitation. Les applications courantes font de même et demandent de la mémoire au système d'exploitation via des fonctions de bibliothèque comme malloc si nécessaire.

Dans certains scénarios d'application ayant des exigences de performances élevées, la mémoire doit être fréquemment utilisée et libérée, comme les serveurs Web, les langages de programmation, etc. Étant donné que la demande d'espace mémoire auprès du système d'exploitation déclenchera des appels système, des appels système et La différence de performances des appels de fonctions ordinaires de la couche application est très différente, car les appels système feront passer le CPU du mode utilisateur au noyau, car seul le système d'exploitation peut effectuer des opérations impliquant la mémoire physique, et le coût de ce changement est très important si. Le basculement fréquent entre le mode noyau et le mode utilisateur peut entraîner des problèmes de performances.

Au vu de la surcharge des appels système, certaines applications qui nécessitent des performances gèrent généralement leur propre mémoire en mode utilisateur. Par exemple, lors d'une première demande d'une mémoire légèrement plus grande, elle sera conservée en tant que mémoire. de rechange, et la mémoire libérée après utilisation n'est pas immédiatement restituée au système d'exploitation, et la mémoire peut être réutilisée, évitant ainsi la consommation de performances causée par plusieurs applications et versions de mémoire.

PHP n'a pas besoin de gérer explicitement la mémoire, ces tâches sont gérées par le moteur Zend. Il existe un système de gestion de la mémoire dans PHP, qui libérera automatiquement les déchets de mémoire qui ne sont plus utilisés.

2. Afficher et définir les paramètres et fonctions liés à la mémoire en php

Configurer la taille de la mémoire :

(1) La configuration memory_limit = 32M peut être modifiée dans php.ini.
(2) Si la fonction ini_set() n'est pas désactivée dans l'environnement, vous pouvez la configurer via cette fonction : ini_set("memory_limit", "128M");

Vérifiez l'état de la mémoire :

(1) memory_get_usage(), la fonction de cette fonction est d'obtenir la taille mémoire actuellement utilisée par le script PHP.
(2) memory_get_peak_usage(), cette fonction renvoie le pic de mémoire occupé par le script actuel à la position actuelle, afin qu'il soit possible d'obtenir les besoins en mémoire du script actuel.

Cet article est terminé ici. Pour un contenu plus passionnant, vous pouvez faire attention à la colonne Tutoriel vidéo php du site Web PHP chinois !

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Cet article est reproduit dans:. en cas de violation, veuillez contacter admin@php.cn Supprimer