Table des matières
您可能感兴趣的文章
Maison développement back-end tutoriel php memcached是什么?memcache该何使用?_PHP教程

memcached是什么?memcache该何使用?_PHP教程

Jul 13, 2016 am 10:31 AM
memcached

Memcached是什么?

Memcached是danga.com(运营LiveJournal的技术团队)开发的一套分布式内存对象缓存系统,用于在动态系统中减少数据库负载,提升性能。很多人都把它当作和SharedMemory那种形式的存储载体来使用,虽然memcached使用了同样的“Key=>Value”方式组织数据,但是它和共享内存、APC等本地缓存有非常大的区别。Memcached是分布式的,也就是说它不是本地的。它基于网络连接(当然它也可以使用localhost)方式完成服务,它本身是一个独立于应用的程序或守护进程(Daemon方式)。

Memcached使用libevent库实现网络连接服务,理论上可以处理无限多的连接,但是它和Apache不同,它更多的时候是面向稳定的持续连接的,所以它实际的并发能力是有限制的。在保守情况下memcached的最大同时连接数为200,这和 Linux 线程能力有关系,这个数值是可以调整的。关于libevent可以参考相关文档。

Memcached内存使用方式也和APC不同。APC是基于共享内存和MMAP的,memcachd有自己的内存分配算法和管理方式,它和共享内存没有关系,也没有共享内存的限制,通常情况下,每个memcached进程可以管理2GB的内存空间,如果需要更多的空间,可以增加进程数。

Memcached该如何使用?

在很多时候,memcached都被滥用了,这就免不了太多的人对他产生抱怨。我经常在论坛上看见有人发贴,类似于“如何提高效率”,回复是“使用memcached”,至于怎么用?用在哪里?用来干什么?等详细点的回答一句也没有。在这里作者要阐明一个观点就是:memcached不是万能的,它并不是适用在所有场合。

Memcached是“分布式”的内存对象缓存系统,那么就是说,那些不需要“分布”的,不需要共享的,或者干脆规模小到只有一台服务器的应用,memcached不会带来任何好处,相反还会拖慢系统效率,因为网络连接同样需要资源,即使是UNIX本地连接也一样。

在我之前的测试数据中显示,memcached本地读写速度要比直接PHP内存数组慢几十倍,而APC、共享内存方式都和直接数组差不多。可见,如果只是本地级缓存,使用memcached是非常不划算的。

Memcached在很多时候都是作为数据库前端cache使用的。因为它比数据库少了很多SQL解析、磁盘操作等开销,而且它是使用内存来管理数据的,所以它可以提供比直接读取数据库更好的性能,在大型系统中,访问同样的数据是很频繁的,memcached可以大大降低数据库压力,使系统执行效率提升。另外,memcached也经常作为服务器之间数据共享的存储媒介,例如在SSO系统中保存系统单点登陆状态的数据就可以保存在memcached中,被多个应用共享。

需要注意的是,memcached使用内存管理数据,所以它是易失的,当服务器重启,或者memcached进程中止,数据便会丢失,所以memcached不能用来持久保存数据。很多人的错误理解,memcached的性能非常好,好到了内存和硬盘的对比程度,其实memcached使用内存并不会得到成百上千的读写速度提高,它的实际瓶颈在于网络连接,它和使用磁盘的数据库系统相比,好处在于它本身非常“轻”,因为没有过多的开销和直接的读写方式,它可以轻松应付非常大的数据交换量,所以经常会出现两条千兆网络带宽都满负荷了,memcached进程本身并不占用多少CPU资源的情况。

您可能感兴趣的文章

  • PHP报Fatal error Allowed memory size of...内存不足的错误应该如何解决
  • windows下memcache的安装与配置教程
  • body 是什么意思">css中 html > body 是什么意思
  • php计算当前是一年或一月中第几周的函数
  • MySQL replace函数替换字符串语句的用法
  • 关于使用in_array() foreach array_search() 查找数组是否包含时的性能对比
  • Mysql 数据库缓存cache功能分析,调试以及性能总结
  • PHP 字符串转义函数(addslashes,stripslashes)详解

www.bkjia.comtruehttp://www.bkjia.com/PHPjc/764126.htmlTechArticleMemcached是什么? Memcached是danga.com(运营LiveJournal的技术团队)开发的一套分布式内存对象缓存系统,用于在动态系统中减少数据库负载,提...
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

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

AI Hentai Generator

AI Hentai Generator

Générez AI Hentai gratuitement.

Article chaud

R.E.P.O. Crystals d'énergie expliqués et ce qu'ils font (cristal jaune)
2 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
Repo: Comment relancer ses coéquipiers
1 Il y a quelques mois By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island Adventure: Comment obtenir des graines géantes
4 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
Combien de temps faut-il pour battre Split Fiction?
3 Il y a quelques semaines By DDD

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

La technologie de mise en cache Memcached optimise le traitement des sessions en PHP La technologie de mise en cache Memcached optimise le traitement des sessions en PHP May 16, 2023 am 08:41 AM

Memcached est une technologie de mise en cache couramment utilisée qui peut améliorer considérablement les performances des applications Web. En PHP, la méthode de traitement de session couramment utilisée consiste à stocker le fichier de session sur le disque dur du serveur. Cependant, cette méthode n'est pas optimale car le disque dur du serveur deviendra l'un des goulots d'étranglement des performances. L'utilisation de la technologie de mise en cache Memcached peut optimiser le traitement des sessions en PHP et améliorer les performances des applications Web. Séance en PHP

Bibliothèque de mise en cache en PHP8.0 : Memcached Bibliothèque de mise en cache en PHP8.0 : Memcached May 14, 2023 am 08:16 AM

Bibliothèque de mise en cache en PHP8.0 : Memcached Avec le développement rapide d'Internet, les applications modernes nécessitent une technologie de mise en cache efficace et fiable pour améliorer les performances et gérer de grandes quantités de données. En raison de la popularité de PHP et de sa nature open source, la bibliothèque de mise en cache PHP est devenue un outil essentiel dans la communauté du développement Web. Memcached est un système de mise en cache mémoire haute vitesse open source largement utilisé qui peut gérer des millions de requêtes de cache connectées simultanément et peut être utilisé dans de nombreux types d'applications différents, tels que les réseaux sociaux, en ligne.

Comment optimiser l'utilisation du processeur des applications PHP à l'aide de la technologie de mise en cache Memcached ? Comment optimiser l'utilisation du processeur des applications PHP à l'aide de la technologie de mise en cache Memcached ? Jun 21, 2023 pm 05:07 PM

Avec le développement d'Internet, les applications PHP sont devenues de plus en plus courantes dans le domaine des applications Internet. Cependant, un accès simultané élevé par les applications PHP peut entraîner une utilisation élevée du processeur sur le serveur, affectant ainsi les performances de l'application. Afin d'optimiser les performances des applications PHP, la technologie de mise en cache Memcached est devenue un bon choix. Cet article explique comment utiliser la technologie de mise en cache Memcached pour optimiser l'utilisation du processeur des applications PHP. Introduction à la technologie de mise en cache Memcached Memcached est un

Sauvegarde et récupération de bases de données PHP et Memcached Sauvegarde et récupération de bases de données PHP et Memcached May 15, 2023 pm 09:12 PM

Avec le développement rapide d'Internet, la sauvegarde et la restauration de bases de données MySQL à grande échelle sont devenues l'une des compétences essentielles des grandes entreprises et des sites Web. Avec l'application généralisée de Memcached, la manière de sauvegarder et de restaurer Memcached est également devenue un problème important. En tant que l'un des principaux langages de développement Web, PHP présente des avantages et des compétences uniques dans la gestion de la sauvegarde et de la récupération de MySQL et Memcached. Cet article présentera en détail la méthode d'implémentation du traitement PHP de la sauvegarde et de la récupération MySQL et Memcached.

Utilisez la technologie de mise en cache Memcached pour optimiser la lecture audio et vidéo en PHP Utilisez la technologie de mise en cache Memcached pour optimiser la lecture audio et vidéo en PHP May 17, 2023 pm 04:01 PM

Avec le développement continu de la technologie Internet, les ressources audio et vidéo sont devenues une forme de contenu très importante sur Internet, et PHP, en tant que l'un des langages les plus utilisés dans le développement de réseaux, est également constamment utilisé dans le domaine de la vidéo. et la lecture audio. Cependant, avec le nombre croissant d'utilisateurs de sites Web audio et vidéo, de nombreux sites Web ont découvert un problème : dans des conditions de concurrence élevée, la vitesse de traitement de l'audio et de la vidéo par PHP ralentit considérablement, ce qui entraîne des problèmes tels qu'une incapacité à lire à temps ou une lecture bloquée. . Pour résoudre ce problème, la technologie de mise en cache Memcached doit

Gestion du cache avec PHP et Memcached Gestion du cache avec PHP et Memcached May 23, 2023 pm 02:21 PM

Avec l'augmentation continue des applications réseau et l'expansion continue du volume de données, l'efficacité de la lecture et de l'écriture des données est devenue l'un des facteurs importants affectant les performances des applications. L’application de la technologie de mise en cache peut bien résoudre ce problème. Dans les applications PHP, Memcached est le serveur de cache le plus couramment utilisé. Memcached est un système de mise en cache d'objets de mémoire distribuée hautes performances qui peut stocker les données couramment utilisées en mémoire et améliorer l'efficacité de la récupération des données. Cet article expliquera comment utiliser PHP et Memcached pour la gestion du cache, et comment optimiser

Surveillance des performances PHP et Memcached Surveillance des performances PHP et Memcached May 15, 2023 pm 09:51 PM

Avec le développement rapide des applications Internet modernes, l’expérience utilisateur est cruciale pour le succès d’une application. Comment garantir des performances élevées et une haute disponibilité des applications est devenu l'un des problèmes importants que les développeurs doivent résoudre. En tant que langage de programmation largement utilisé, la surveillance et l'optimisation des performances de PHP sont également très importantes. Memcached est un système de mise en cache d'objets à mémoire distribuée hautes performances qui peut aider les applications à améliorer leurs performances et leur évolutivité. Cet article explique comment utiliser PHP et Memcached pour implémenter la surveillance des performances.

Comment implémenter le cluster de bases de données Memcached en PHP Comment implémenter le cluster de bases de données Memcached en PHP May 15, 2023 pm 03:31 PM

Avec le développement rapide des applications Internet, le stockage et le traitement des données deviennent de plus en plus volumineux et complexes. Dans ce contexte, Memcached, en tant que système de cache mémoire distribué léger et performant, est progressivement devenu un élément indispensable du domaine des applications Internet. Dans le langage PHP, Memcached peut interagir avec le serveur Memcached en étendant la classe Memcached intégrée. Dans l'environnement de production actuel, nous devons créer un cluster de bases de données Memcached pour garantir.

See all articles