Comment utiliser Memcache pour une mise en cache et un calcul efficaces des données dans le développement PHP ?

PHPz
Libérer: 2023-11-07 12:10:02
original
1275 Les gens l'ont consulté

Comment utiliser Memcache pour une mise en cache et un calcul efficaces des données dans le développement PHP ?

À mesure que l'ampleur des applications Web et le nombre d'utilisateurs augmentent, la lecture et le traitement rapides des données sont devenus un enjeu important. Pour résoudre ce problème, le mécanisme de mise en cache vient.

Memcache est un système de mise en cache distribué hautes performances souvent utilisé pour améliorer la vitesse et l'évolutivité des applications Web. Il s'agit d'un outil technologique de mise en cache en mémoire qui permet aux développeurs de stocker des données dans un emplacement bien connu, augmentant ainsi la vitesse des applications et évitant les interrogations répétées des données dans la base de données.

En PHP, il est très pratique d'utiliser Memcache pour stocker et traiter des données. Il vous suffit d'installer l'extension correspondante et d'ajouter la configuration correspondante dans le code.

1. Installer et configurer l'extension Memcache

  1. Installer l'extension Memcache
    Dans CentOS, nous pouvons exécuter la commande suivante pour installer l'extension Memcache :
yum install php-pecl-memcache
Copier après la connexion

Dans Ubuntu, nous pouvons exécuter la commande suivante pour installer l'extension Memcache :

sudo apt-get install php-memcache
Copier après la connexion

Si vous utilisez le système d'exploitation Windows, vous pouvez télécharger le fichier DLL Memcache sur le _site Web PECL_ et l'ajouter au fichier php.ini.

  1. Ajouter la configuration dans le fichier php.ini
    Ajoutez la configuration suivante pour activer l'extension Memcache :
extension=memcache.so
Copier après la connexion

Sous Windows, vous pouvez ajouter la configuration suivante :

extension=php_memcache.dll
Copier après la connexion

2. Utilisez Memcache pour une mise en cache et des calculs efficaces des données

  1. Connexion à Memcache
    Pour utiliser Memcache en PHP, nous devons d'abord créer un handle pour gérer la connexion. Nous pouvons nous connecter à Memcache en utilisant le code suivant :
// 创建一个Memcache对象
$mc = new Memcache();
 
// 链接到Memcache服务端
$mc->connect('127.0.0.1', 11211) or die("Could not connect");
Copier après la connexion
  1. Stockage et récupération de données
    Afin de stocker des données dans Memcache, nous pouvons utiliser la méthode set. Par exemple, le code suivant stocke un tableau dans Memcache :
$data = array('name' => 'Joseph', 'age' => 30);
$mc->set('user_data', $data, 0, 60);
Copier après la connexion

La méthode set accepte 4 paramètres :

  • key : la clé des données à stocker dans le cache (obligatoire)
  • value : la valeur à stocker données stockées dans le cache (obligatoire)
  • Bit d'indicateur : Spécifie le format de stockage des éléments du cache sur le serveur. Lorsque les éléments du cache sont stockés sur le serveur, ils seront compressés et stockés en fonction du bit d'indicateur (facultatif)
  • Expiration. time: cache Combien de temps après l'expiration de l'élément. La valeur par défaut est 0, ce qui signifie que les éléments du cache n'expireront pas (facultatif)

Pour récupérer les données du cache, nous pouvons utiliser la méthode get. Par exemple, le code suivant récupère les données stockées ci-dessus depuis Memcache :

$user_data = $mc->get('user_data');
Copier après la connexion

La méthode get renverra les données si l'entrée du cache est trouvée, sinon elle renverra false.

  1. Traitement des données
    Une fois que nous avons les données du cache, nous pouvons les utiliser pour effectuer divers calculs et traitements. Par exemple, l'exemple de code suivant récupère tous les utilisateurs de la base de données, les stocke dans le cache, puis calcule leur âge moyen :
// 获取所有用户
$users = $db->query("SELECT * FROM users");
 
// 将数据存储到缓存中
$mc->set('users', $users, 0, 300);
 
// 从缓存中获取所有用户
$users = $mc->get('users');
 
// 计算平均年龄
$total_age = 0;
foreach ($users as $user) {
    $total_age += $user['age'];
}
$average_age = $total_age / count($users);
Copier après la connexion

Dans cet exemple, nous procédons comme suit :

  • Récupérons tous les utilisateurs de la base de données .
  • Stockez tous les utilisateurs dans le cache pour un accès rapide plus tard.
  • Récupérez tous les utilisateurs du cache.
  • Calculez l'âge moyen de tous les utilisateurs.
  1. Supprimer les données
    Si nous voulons supprimer des données du cache, nous pouvons utiliser la méthode de suppression. Par exemple, le code suivant supprime les données stockées du cache :
$mc->delete('user_data');
Copier après la connexion

La méthode delete accepte en paramètre la clé des données à supprimer.

  1. Vider le cache
    Si nous voulons vider tout le cache, nous pouvons utiliser la méthode de vidage. Par exemple, le code suivant effacera toutes les données de Memcache :
$mc->flush();
Copier après la connexion

Ce qui précède est un exemple simple de la façon d'utiliser Memcache pour configurer les données mises en cache dans une application PHP, récupérer les données du cache, traiter les données et effacer le cache entier. Memcached est un outil puissant qui peut améliorer les performances et l'évolutivité de votre application avec une utilisation appropriée.

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!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!