Memcache est un système de mise en cache d'objets à mémoire distribuée gratuit, open source et hautes performances. Ce système peut améliorer la vitesse d'accès des sites Web, en particulier pour certains grands sites Web qui nécessitent un accès fréquent aux bases de données. est très significatif.
Pourquoi utiliser Memcache ?
est principalement utilisé dans les applications Web dynamiques pour réduire la charge sur la base de données.
Il réduit le nombre de lectures de la base de données en mettant en cache les données et les objets en mémoire,
augmentant ainsi la vitesse d'accès au site Web.
Le principe de mise en œuvre de Memcache
Les atomes traités par Memcache sont chaque clé et val La clé sera convertie en clé de hachage via une table de hachage, qui est. pratique pour la recherche, la comparaison et la correspondance possible. Dans le même temps, mem utilise un hachage à deux niveaux, qui est conservé via une table de hachage.
Memcache comporte deux composants principaux : le serveur et le client.
Dans une requête de composant Memcache, le client détermine d'abord l'emplacement de kv côté service via la valeur de hachage de la clé lorsque le serveur. côté détermine Après cela, le client enverra une demande au serveur. Laissez-le découvrir les données exactes, car il n'y a pas d'interaction ni de protocole de multidiffusion, donc mem apporte un impact minimal sur le réseau
Fonctionnalités et limitations de Memcache
dans Il y a aucune limite à la quantité de données d'élément pouvant être enregistrées dans Memcached, tant qu'il y a suffisamment de mémoire.
Un seul processus Memcached peut utiliser jusqu'à 2 Go de mémoire dans un système 32 bits, s'il se trouve dans un système 64 bits, il n'y a pas de limite, car le système 32 bits limite un seul processus. pour utiliser jusqu'à 2 Go de mémoire. Pour utiliser plus de mémoire, plusieurs processus Memcached peuvent être ouverts sur plusieurs ports
Délai d'expiration maximum des données de 30 jours. S'il est défini sur permanent, il expirera également à ce moment-là. Constante REALTIME_MAXDELTA
60*60*24* 30 contrôle
La longueur maximale de la clé est de 250 octets. Si elle est supérieure à cette longueur, elle ne peut pas être stockée. Constante KEY_MAX_LENGTH 250 contrôle
.Les données maximales pour un seul élément sont de 1 Mo. Les données dépassant 1 Mo ne seront pas stockées Constant POWER_BLOCK 1048576 Control,
C'est la taille de dalle par défaut
Le nombre maximum de connexions simultanées. est de 200, contrôlé via freetotal dans conn_init(), le nombre maximum de connexions logicielles est de 1024, via
Settings.maxconns=1024 pour le contrôle
Paramètres liés à l'occupation de l'espace : settings.factor= 1.25, settings.chunk_size=48, affectant l'occupation des données de la dalle et la méthode de progression
memcached est un service de communication socket non bloquant basé sur la bibliothèque libevent. En raison de la communication non bloquante, la vitesse de lecture et d'écriture de la mémoire est. très vite.
Memcached est divisé en serveur et client. Plusieurs serveurs et clients peuvent être configurés. Il est largement utilisé dans les services distribués.
Memcached est très efficace en tant que plateforme de distribution de données à petite échelle.
Memcached a une correspondance biunivoque entre les clés et les valeurs. La taille de la clé par défaut ne peut pas dépasser 128 octets. La taille de la valeur par défaut est de 1 Mo, ce qui correspond à une dalle. (continu), vous ne pouvez pas utiliser deux dalles, car les deux dalles ne sont pas continues et ne peuvent pas être stockées en mémoire, donc la taille des dalles doit être modifiée lorsque plusieurs clés et valeurs sont stockées, même si les dalles le sont. pas entièrement utilisé, les autres données ne seront pas stockées.
memcached peut déjà prendre en charge des langages clients tels que C/C++, Perl, PHP, Python, Ruby, Java, C#, Postgres, Chicken Scheme, Lua, MySQL et Protocol.
Tutoriel recommandé : "PHP"
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!