Maison  >  Article  >  développement back-end  >  Comment utiliser Memcache pour une mise en cache et un stockage efficaces des données dans le développement PHP ?

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

WBOY
WBOYoriginal
2023-11-07 10:03:581185parcourir

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

Avec le développement de la technologie Internet, l'augmentation du volume de données et l'amélioration des besoins des utilisateurs, comment améliorer les performances du système est devenu un problème urgent à résoudre. La mise en cache des données est l'un des moyens importants pour améliorer les performances du système, et Memcache est un outil de mise en cache très couramment utilisé dans le développement PHP. Dans cet article, nous présenterons comment utiliser Memcache pour une mise en cache et un stockage efficaces des données, et fournirons des exemples de code.

1. Qu'est-ce que Memcache

Memcached est un système de mise en cache d'objets à mémoire distribuée open source et hautes performances utilisé pour accélérer les applications Web dynamiques. Il réduit la charge de la base de données et facilite la charge des applications CGI.

2. Pourquoi utiliser Memcache

Dans le développement Web, la lecture et l'écriture de données sont une opération très chronophage, en particulier dans les situations de forte concurrence, chaque lecture et écriture de données consomme une grande quantité de ressources système. À l’heure actuelle, nous avons besoin d’un système de cache pour stocker en mémoire certaines données couramment utilisées afin d’améliorer l’efficacité de la lecture.

Bien que le mécanisme de session de PHP puisse implémenter la mise en cache, la session ne concerne qu'un seul site. Pour les situations où il existe plusieurs sites ou même plusieurs serveurs, la session ne peut pas répondre aux besoins. Memcache peut implémenter une mise en cache distribuée et ses performances sont très bonnes, ce qui peut considérablement améliorer les performances du système.

3. Comment utiliser Memcache

  1. Installer l'extension Memcache

Avant d'utiliser Memcache, nous devons installer l'extension Memcache. Dans un environnement Linux, vous pouvez utiliser la commande suivante pour installer.

yum install php-pecl-memcached

Dans l'environnement Windows, l'extension php_memcache.dll peut être activée dans le fichier php.ini.

  1. Connexion au serveur Memcache

Avant d'utiliser Memcache, nous devons nous connecter au serveur Memcache. Vous pouvez utiliser le code suivant :

$memcache = new Memcache;
$memcache->connect('127.0.0.1', 11211) or die ('Could not connect');

où 127.0.0.1 est l'adresse IP du serveur Memcache et 11211 est le numéro de port utilisé par le serveur Memcache.

  1. Stockez les données dans Memcache

Vous pouvez utiliser la méthode set() pour stocker les données dans Memcache. La syntaxe est la suivante :

$memcache->set($key, $value, $flag, $expire);

Parmi eux, $key est la clé des données, $value est la valeur des données, $flag est la marque des données et $expire est le délai d'expiration des données.

Par exemple, le code suivant peut stocker une chaîne dans Memcache et définir le délai d'expiration sur 10 minutes :

$memcache->set('username', 'jack', 0, 600);
  1. Lecture des données de Memcache

La lecture des données de Memcache peut utiliser la méthode get(). La syntaxe est la suivante :

$memcache->get($key);

Par exemple, le code suivant peut lire des données avec la clé "nom d'utilisateur" de Memcache :

$username = $memcache->get('username');
if ($username) {
    echo 'The username is ' . $username;
} else {
    echo 'The data does not exist in Memcache';
}
  1. Supprimer des données dans Memcache

Pour supprimer des données de Memcache, vous pouvez utiliser la commande delete( ) méthode. La syntaxe est la suivante :

$memcache->delete($key);

Par exemple, le code suivant peut supprimer les données avec la clé "username" de Memcache :

$memcache->delete('username');
  1. Fermer la connexion Memcache

Après avoir utilisé Memcache, nous devons fermer la connexion avec celui-ci , vous pouvez utiliser la méthode close () :

$memcache->close();

IV. Exemple d'utilisation

Ce qui suit est un exemple complet montrant comment utiliser Memcache pour la mise en cache et le stockage des données.

get('username');
if ($username) {
    echo 'The username is ' . $username . '
'; } else { // 从数据库中读取数据 $conn = mysqli_connect('localhost', 'root', 'password'); mysqli_select_db($conn, 'test'); $result = mysqli_query($conn, "SELECT username FROM users WHERE user_id=1"); $row = mysqli_fetch_array($result); $username = $row['username']; mysqli_close($conn); // 将数据存储到Memcache中 $memcache->set('username', $username, 0, 600); echo 'The username is ' . $username . '
'; } // 删除Memcache中的数据 $memcache->delete('username'); $memcache->close(); ?>

Dans l'exemple ci-dessus, si les données sont trouvées dans Memcache, les données sont lues directement à partir de Memcache et sorties. Si les données ne sont pas trouvées dans Memcache, les données sont lues dans la base de données, stockées dans Memcache et le délai d'expiration est défini sur 10 minutes. Enfin, supprimez les données dans Memcache. De cette manière, Memcache peut être utilisé efficacement pour la mise en cache et le stockage des données.

En bref, Memcache est un système de mise en cache très puissant, qui peut grandement améliorer les performances du système et qui est également très simple à utiliser. Il nous suffit d'utiliser l'extension Memcache, de nous connecter au serveur Memcache, de stocker les données dans Memcache et de lire les données de Memcache. J'espère que cet article pourra aider les développeurs PHP à maîtriser la technologie Memcache et à réaliser une mise en cache et un stockage efficaces des données.

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:
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