Position actuelle: Accueil> Derniers articles> Optimisation des performances PHP : utilisez Memcache pour améliorer l'efficacité de l'exécution du code

Optimisation des performances PHP : utilisez Memcache pour améliorer l'efficacité de l'exécution du code

M66 2025-11-05

Solution de mise en cache pour améliorer l'efficacité d'exécution dans le développement PHP - Application Memcache

Dans le développement PHP, les goulots d'étranglement en termes de performances affectent souvent l'efficacité d'exécution du code. Ce problème peut être efficacement atténué en utilisant la technologie de mise en cache, dont Memcache est une solution très courante et efficace. Cet article présentera en détail comment appliquer Memcache en PHP pour optimiser les performances du code et fournira des exemples correspondants.

Connectez et initialisez le service Memcache

Avant d'utiliser Memcache, vous devez vous connecter et initialiser le service Memcache. Vous pouvez vous connecter au serveur via memcache_connect() et sélectionner le pool de cache via memcache_select() .

<?php
$memcache = memcache_connect('localhost', 11211);
if(!$memcache){
    echo 'connecterMemcacheLe serveur a échoué!';
    exit;
}
memcache_select($memcache, 'mypool');
?>

Définir et obtenir les données du cache

Avant de mettre en cache des données, celles-ci doivent être stockées dans le cache. Utilisez memcache_set() pour définir le cache et memcache_get() pour obtenir le cache.

<?php
$memcache = memcache_connect('localhost', 11211);
memcache_select($memcache, 'mypool');

$data = 'Ce sont des données qui doivent être mises en cache';

// Enregistrer les données dans le cache,Le délai d&#39;expiration est1Heure
memcache_set($memcache, 'cache_data', $data, false, 3600);

// Récupérer les données du cache
$cached_data = memcache_get($memcache, 'cache_data');
?>

Supprimer les données mises en cache

Si certaines données mises en cache ne sont plus nécessaires, elles peuvent être supprimées via memcache_delete() .

<?php
$memcache = memcache_connect('localhost', 11211);
memcache_select($memcache, 'mypool');

// Supprimer les données mises en cache
memcache_delete($memcache, 'cache_data');
?>

Définir et obtenir des données mises en cache par lots

En plus des opérations de cache individuelles, les données peuvent également être définies et récupérées par lots pour réduire le nombre d'interactions avec le serveur et améliorer les performances.

<?php
$memcache = memcache_connect('localhost', 11211);
memcache_select($memcache, 'mypool');

$data1 = 'données en cache1';
$data2 = 'données en cache2';

// 批量设置données en cache
memcache_set_multi($memcache, array('cache_data1' => $data1, &#39;cache_data2&#39; => $data2), false, 3600);

// Récupère les données mises en cache par lots $cached_data = memcache_get_multi($memcache, array(&#39;cache_data1&#39;, &#39;cache_data2&#39;));
?>

Opérations d'incrémentation et de décrémentation automatiques

Memcache prend en charge les opérations d'incrémentation et de décrémentation sur des valeurs entières, ce qui peut faciliter la mise en œuvre de fonctions de comptage.

<?php
$memcache = memcache_connect('localhost', 11211);
memcache_select($memcache, 'mypool');

// Initialiser le compteur
memcache_set($memcache, 'counter', 0, false, 0);

// opération d&#39;auto-incrémentation
memcache_increment($memcache, 'counter');

// Opération de décrémentation
memcache_decrement($memcache, 'counter');
?>

Supprimer les données mises en cache par lots

Lorsqu'un lot de données mises en cache n'est plus nécessaire, il peut être supprimé par lots via memcache_delete() .

<?php
$memcache = memcache_connect('localhost', 11211);
memcache_select($memcache, 'mypool');

// 批量Supprimer les données mises en cache
memcache_delete($memcache, array('cache_data1', 'cache_data2'));
?>

En utilisant correctement les fonctions d'initialisation de connexion, de configuration et de récupération du cache, de suppression du cache, d'opérations par lots et de fonctions d'incrémentation et de décrémentation automatiques de Memcache, les développeurs PHP peuvent améliorer considérablement l'efficacité de l'exécution du code, réduire l'accès à la base de données et améliorer les performances des applications. Dans les projets réels, les technologies de mise en cache, telles que Redis, peuvent être sélectionnées de manière flexible en fonction des besoins.