Comment utiliser Memcached en PHP

王林
Libérer: 2023-06-11 19:32:01
original
1311 Les gens l'ont consulté

Certains sites Web ou applications doivent mettre en cache et accéder rapidement à de grandes quantités de données. Dans ce cas, utiliser Memcached, un système de mise en cache d’objets à mémoire distribuée open source populaire, est un bon choix. Memcached peut améliorer les performances des applications en mettant en cache de grandes quantités de données. Il peut aider à réduire la charge d'accès aux bases de données volumineuses et à soulager la pression des requêtes fréquentes et des opérations de lecture et d'écriture sur la base de données. En PHP, utiliser Memcached est très simple. Cet article explique comment installer et utiliser Memcached.

  1. Installer Memcached

Installer Memcached sur Ubuntu est très simple, il suffit de saisir la commande suivante dans le terminal :

sudo apt-get update
sudo apt-get install memcached
Copier après la connexion

Après l'installation, nous devons également installer l'extension php-memcached, qui est le client PHP de Memcached et interface. Voici comment installer l'extension php-memcached sur Ubuntu :

sudo apt-get update
sudo apt-get install php-memcached
Copier après la connexion
  1. Connexion à Memcached

Lorsque vous utilisez Memcached via PHP, vous devez d'abord créer une instance Memcached et vous connecter au serveur Memcached. Une instance peut être créée et connectée au serveur à l'aide de la fonction Memcached(), comme indiqué ci-dessous : Memcached()函数创建实例并连接到服务器,如下所示:

$memcached = new Memcached();
$memcached->addServer('127.0.0.1', 11211);
Copier après la connexion

这里,我们创建了一个$memcached对象,然后使用addServer()方法将其连接到位于本地主机上端口为11211的Memcached服务器。

  1. 存储和获取数据

现在已经连接到了Memcached服务器,接下来可以将数据存储在其中。可以使用set()方法将数据存储在Memcached中,如下所示:

$memcached->set('key', 'value', 60);
Copier après la connexion

这里,我们将名为“key”的数据存储在Memcached中,并将其值设置为“value”。此外,我们为该数据设置了一个存储时间为60秒的超时期限。这意味着在60秒后,该数据将被自动删除。同样,可以使用get()方法从Memcached中获取数据,如下所示:

$value = $memcached->get('key');
Copier après la connexion

这里,我们使用get()方法获取名为“key”的数据的值,并将其存储在$value变量中。

  1. 删除数据

如果需要从Memcached中删除数据,可以使用delete()方法,如下所示:

$memcached->delete('key');
Copier après la connexion

这里,我们使用delete()方法从Memcached中删除名为“key”的数据。

  1. 增加和减少数值数据

使用increment()decrement()方法可以对Memcached中存储的数值数据进行增加和减少操作。语法如下所示:

$memcached->increment('key');
$memcached->decrement('key', $decrement_value);
Copier après la connexion

这里,increment()方法将名为“key”的数值数据增加一。而decrement()方法将名为“key”的数值数据减少$decrement_value。

  1. Memcached连接池

如果需要管理多个Memcached服务器,可以使用连接池。使用连接池可以将多个服务器作为单个Memcached实例来访问,这样可以将数据分布在不同的服务器上,提高应用程序的可伸缩性。可以使用addServers()方法添加多个服务器,如下所示:

$servers = array(
  array('127.0.0.1', 11211),
  array('127.0.0.2', 11211),
  array('127.0.0.3', 11211)
);
$memcached->addServers($servers);
Copier après la connexion

这里,我们创建了一个名为$servers的数组,其中包含了三个Memcached服务器的IP地址和端口信息。然后,我们使用addServers()rrreee

Ici, nous créons un objet $memcached puis utilisons addServer() le connecte au serveur Memcached situé sur l'hôte local sur le port 11211.

    Stockage et récupération des données

    🎜Maintenant que vous êtes connecté au serveur Memcached, vous pouvez y stocker les données. Les données peuvent être stockées dans Memcached en utilisant la méthode set() comme indiqué ci-dessous : 🎜rrreee🎜Ici, nous stockons les données nommées "clé" dans Memcached et définissons leur valeur sur "valeur". De plus, nous avons fixé un délai d'attente de 60 secondes pour que ces données soient stockées. Cela signifie qu'après 60 secondes, les données seront automatiquement supprimées. De même, vous pouvez utiliser la méthode get() pour obtenir des données de Memcached, comme indiqué ci-dessous : 🎜rrreee🎜Ici, nous utilisons la méthode get() pour obtenir la clé nommé "key" La valeur des données et la stocke dans la variable $value. 🎜
      🎜Supprimer des données🎜🎜🎜Si vous devez supprimer des données de Memcached, vous pouvez utiliser la méthode delete(), comme indiqué ci-dessous : 🎜rrreee🎜Ici, nous utilisez delete() supprime les données nommées "clé" de Memcached. 🎜
        🎜Augmenter et diminuer les données numériques🎜🎜🎜Utilisez les méthodes increment() et decrement() pour effectuer des opérations sur les données numériques stockées dans Memcached Opérations d’augmentation et de diminution. La syntaxe est la suivante : 🎜rrreee🎜Ici, la méthode increment() augmente la donnée numérique nommée "key" de un. La méthode decrement() réduit les données numériques nommées "key" de $decrement_value. 🎜
          🎜Pool de connexions Memcached🎜🎜🎜Si vous devez gérer plusieurs serveurs Memcached, vous pouvez utiliser le pool de connexions. Grâce au regroupement de connexions, plusieurs serveurs sont accessibles en tant qu'instance Memcached unique, ce qui peut distribuer les données sur différents serveurs et améliorer l'évolutivité des applications. Plusieurs serveurs peuvent être ajoutés à l'aide de la méthode addServers(), comme indiqué ci-dessous : 🎜rrreee🎜Ici, nous avons créé un tableau nommé $servers, qui contient trois L'adresse IP et informations de port du serveur Memcached. Nous ajoutons ensuite ces serveurs à l'instance Memcached en utilisant la méthode addServers(). De cette manière, une seule instance Memcached peut être utilisée pour gérer plusieurs serveurs Memcached et effectuer des opérations de lecture et d'écriture de données. 🎜🎜Résumé🎜🎜Memcached peut considérablement améliorer les performances des applications, réduire l'accès aux bases de données, accélérer les opérations de lecture et d'écriture et réduire la pression de charge. En PHP, utiliser Memcached est très pratique. Il vous suffit de créer une instance Memcached et de vous connecter au serveur, puis de stocker et d'obtenir des données. De plus, plusieurs serveurs peuvent être gérés à l'aide de pools de connexions, améliorant ainsi encore l'évolutivité et les performances des applications. 🎜

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