Maison >développement back-end >tutoriel php >Améliorer l'évolutivité des applications Web à l'aide de la technologie Memcache de PHP

Améliorer l'évolutivité des applications Web à l'aide de la technologie Memcache de PHP

王林
王林original
2023-05-15 18:51:261473parcourir

Avec le développement et la vulgarisation continus de la technologie Internet, le nombre et le trafic des applications Web augmentent constamment. Dans ce cas, comment améliorer l’évolutivité et les performances des applications Web est un problème urgent qui doit être résolu. Parmi eux, utiliser la technologie Memcache de PHP est une solution très efficace.

Memcache est une technologie de mise en cache qui stocke les données en mémoire pour augmenter la vitesse d'accès. Dans les applications Web, Memcache est généralement utilisé pour mettre en cache des données fréquemment consultées ou gourmandes en calcul, telles que les résultats de requêtes de base de données, les fragments de page, les réponses API, etc. L'utilisation de la technologie Memcache peut réduire efficacement la charge sur les serveurs de base de données et d'API, améliorant ainsi l'évolutivité et les performances des applications Web.

Ce qui suit présentera en détail comment utiliser la technologie Memcache de PHP pour améliorer l'évolutivité des applications Web.

1. Installez l'extension Memcache

Il existe une extension Memcache en PHP, qui peut utiliser directement la technologie Memcache. Vous devez d’abord vous assurer que l’extension Memcache est installée sur le serveur. L'extension Memcache peut être installée à l'aide de la commande suivante :

sudo apt-get install php-memcached

Une fois l'installation terminée, vous devez redémarrer le serveur Apache pour que l'extension prenne effet.

2. Configurer le serveur Memcache

Pour utiliser la technologie Memcache en PHP, vous devez d'abord configurer le serveur Memcache. Vous pouvez utiliser la commande suivante pour installer le serveur Memcache :

sudo apt-get install memcached

Une fois l'installation terminée, vous devez modifier le fichier de configuration du serveur Memcache /etc/memcached.conf et définir des paramètres tels que l'adresse IP du serveur et le numéro de port.

Par défaut, le serveur Memcache écoute le port 11211 de cette machine. Vous pouvez utiliser la commande suivante pour tester si le serveur Memcache fonctionne normalement :

telnet localhost 11211

Si vous pouvez vous connecter au serveur Memcache, cela signifie que le serveur Memcache fonctionne normalement.

3. Utiliser la technologie Memcache

Pour utiliser la technologie Memcache en PHP, vous devez d'abord créer une instance Memcache. Une instance Memcache peut être créée à l'aide du code suivant :

$memcache = new Memcache;

L'instance Memcache peut ensuite être utilisée pour stocker et lire des données. Voici quelques utilisations courantes :

  1. Stockage de données
$memcache->set("key", "value", MEMCACHE_COMPRESSED, 0); //存储数据

Le premier paramètre est le mot-clé des données, et le deuxième paramètre est la valeur des données. Le troisième paramètre indique si les données sont compressées et le quatrième paramètre est le délai d'expiration des données. Si le délai d'expiration est 0, les données n'expireront jamais.

  1. Lire les données
$memcache->get("key"); //读取数据

Vous devez utiliser les mots-clés des données lors de la lecture des données.

  1. Supprimer les données
$memcache->delete("key"); //删除数据

Vous devez utiliser les mots-clés des données lors de la suppression des données.

4. Exemples d'applications

Ce qui suit est un exemple d'application Web utilisant la technologie Memcache :

  1. Interrogez la liste d'articles dans la base de données
$query = "SELECT * FROM articles";
$result = mysqli_query($connection, $query);
$articles = array();
while ($row = mysqli_fetch_assoc($result)) {
    $articles[] = $row;
}
  1. Stockez les résultats de la requête dans Memcache
$memcache = new Memcache;
$memcache->connect("localhost", 11211);
$memcache->set("articles", $articles, MEMCACHE_COMPRESSED, 3600);

Stockez les résultats de la requête ici Go à Memcache et définissez le délai d'expiration sur 3 600 secondes.

  1. Lire les données de Memcache
$memcache = new Memcache;
$memcache->connect("localhost", 11211);
if ($memcache->get("articles")) {
    $articles = $memcache->get("articles");
} else {
    //从数据库中查询
    $query = "SELECT * FROM articles";
    $result = mysqli_query($connection, $query);
    $articles = array();
    while ($row = mysqli_fetch_assoc($result)) {
        $articles[] = $row;
    }
    //存储到Memcache中
    $memcache->set("articles", $articles, MEMCACHE_COMPRESSED, 3600);
}

Ici, les données sont d'abord lues à partir de Memcache, et si les données existent, elles sont utilisées directement. Si les données n'existent pas, elles sont interrogées depuis la base de données et les résultats de la requête sont stockés dans Memcache.

En utilisant la technologie Memcache, l'évolutivité et les performances des applications Web peuvent être efficacement améliorées. Il convient de noter que l'utilisation de la technologie Memcache ne peut pas remplacer complètement la base de données et le serveur API, mais doit être utilisée comme moyen auxiliaire. Dans le même temps, il convient également de noter que les opérations telles que la mise à jour et la suppression des données doivent être synchronisées avec la base de données et Memcache.

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