Aller au contenu
AFUP AFUP Day 2025 Baromètre Planète PHP PUFA
 

PHP Meminfo ou la chasse aux memory leaks

Description

Les profilers tel que Blackfire.io ou Memprof permettent de connaitre les fonctions qui prennent ou libèrent de la mémoire. Mais visualiser ce que contient la mémoire PHP permet de mieux comprendre les origines des memory leaks. L'extension PHP Meminfo fournit une vue synthétique du nombre d'instances par classe en mémoire, la liste complète des objets et autres structures avec les relations qui les lient (membre de classe, présence dans un tableau, etc...). L'accès à ces informations de liaisons permet de comprendre pourquoi un élément n'a pas été libéré de la mémoire en suivant les références qui continuent à pointer sur lui. Le talk commencera par expliquer les mécanismes de libérations de la mémoire (references counter, cyclic reference garbage collector) spécifique à PHP, les effets des memory leaks sur les performances applicatives, puis détaillera des cases studies de fuite mémoire et de leur analyse avec meminfo, ainsi que leur résolution.

Conférence donnée lors du PHP Tour Clermont-Ferrand 2016, ayant eu lieu les 23 et 24 mai 2016.

Informations complémentaires

Vidéo

Le speaker

Benoit JACQUEMONT

Benoit Jacquemont est tombé dans le web en 2000 après avoir une première expérience sur des logiciels d'encaissements. De Java à PHP, de Oracle à MySQL et des applications de gestions aux sites de eCommerce, il roule sa bosse sur les projets, toujours à forte composante OpenSource, au sein du groupe Smile. Il en devient le CTO en 2009 alors que l'entreprise compte près de 450 développeurs. En janvier 2013, il co-fonde Akeneo avec Frédéric de Gombert, Nicolas Dupont et Yoav Kutner. L'aventure startup commence alors pour lui, en tant que CTO d'Akeneo.

Commentaires

Une approche supplémentaire pour gagner en perf
Ansquer Yannick, le 23/05/2016
En apprendre plus sur les mécanismes derrière PHP
Penalver, le 24/05/2016
Je vais pouvoir tester tout ça dès demain
Fabrice Monseigne, le 24/05/2016
Présentation très intéressante sur les memory leaks et les outils qui peuvent nous aider à les réparer.
Sébastien Rogier, le 25/05/2016
Génial, tout simplement
Julien-Claude FAGOT, le 25/05/2016
Présentation très claire sur un sujet pointu. Merci !
Nicolas Le Nardou, le 26/05/2016
Présentation intéressante et bien expliquée
Benjamin 'Ternel' Clay, le 26/05/2016
Bon rappel de ce qu'est qu'un memory leak, avec un rappel très utile pour moi sur la limite de variables non purgeable à ne pas dépasser ! Je ne suis pas encore sûr d'activer PHP Meminfo en prod, mais ça a éveillé ma curiosité ;)
Mikael Randy, le 27/05/2016
J'aime beaucoup quand des présentations rentrent un peu dans comment PHP marche en interne : il y a toujours des choses à en apprendre ! On ne pense pas souvent à l'aspect "améliorer l'utilisation mémoire, c'est améliorer les perfs", qui nous semble souvent très éloigné lorsqu'on développe en PHP "langage de haut niveau". Donc fort intéressant, merci !
Pascal MARTIN, le 07/06/2016