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

王林
Libérer: 2023-05-15 18:54:01
original
1420 Les gens l'ont consulté

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
Copier après la connexion

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
Copier après la connexion

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
Copier après la connexion

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;
Copier après la connexion

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); //存储数据
Copier après la connexion

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"); //读取数据
Copier après la connexion

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"); //删除数据
Copier après la connexion

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;
}
Copier après la connexion
  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);
Copier après la connexion

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);
}
Copier après la connexion

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!

É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!