memcached是什么?memcache该何使用?_PHP教程
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)详解

Alat AI Hot

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool
Gambar buka pakaian secara percuma

Clothoff.io
Penyingkiran pakaian AI

AI Hentai Generator
Menjana ai hentai secara percuma.

Artikel Panas

Alat panas

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas



Memcached ialah teknologi caching yang biasa digunakan yang boleh meningkatkan prestasi aplikasi web dengan banyak. Dalam PHP, kaedah pemprosesan Sesi yang biasa digunakan adalah untuk menyimpan fail Sesi pada cakera keras pelayan. Walau bagaimanapun, kaedah ini tidak optimum kerana cakera keras pelayan akan menjadi salah satu kesesakan prestasi. Penggunaan teknologi caching Memcached boleh mengoptimumkan pemprosesan Sesi dalam PHP dan meningkatkan prestasi aplikasi Web. Sesi dalam PHP

Caching library dalam PHP8.0: Memcached Dengan perkembangan pesat Internet, aplikasi moden memerlukan teknologi caching yang cekap dan boleh dipercayai untuk meningkatkan prestasi dan mengendalikan sejumlah besar data. Disebabkan populariti PHP dan sifat sumber terbuka, perpustakaan caching PHP telah menjadi alat penting dalam komuniti pembangunan web. Memcached ialah sistem caching memori berkelajuan tinggi sumber terbuka yang digunakan secara meluas yang boleh mengendalikan berjuta-juta permintaan cache bersambung serentak dan boleh digunakan dalam pelbagai jenis aplikasi, seperti rangkaian sosial, dalam talian

Dengan perkembangan Internet, aplikasi PHP telah menjadi lebih biasa dalam bidang aplikasi Internet. Walau bagaimanapun, capaian serentak yang tinggi oleh aplikasi PHP boleh menyebabkan penggunaan CPU yang tinggi pada pelayan, sekali gus menjejaskan prestasi aplikasi. Untuk mengoptimumkan prestasi aplikasi PHP, teknologi caching Memcached telah menjadi pilihan yang baik. Artikel ini akan memperkenalkan cara menggunakan teknologi caching Memcached untuk mengoptimumkan penggunaan CPU aplikasi PHP. Pengenalan kepada teknologi caching Memcached Memcached ialah a

Dengan perkembangan pesat Internet, sandaran dan pemulihan pangkalan data MySQL berskala besar telah menjadi salah satu kemahiran penting untuk perusahaan dan laman web utama. Dengan aplikasi Memcached yang meluas, cara membuat sandaran dan memulihkan Memcached juga telah menjadi isu penting. Sebagai salah satu bahasa utama untuk pembangunan web, PHP mempunyai kelebihan dan kemahiran unik dalam mengendalikan sandaran dan pemulihan MySQL dan Memcached. Artikel ini akan memperkenalkan secara terperinci kaedah pelaksanaan pemproses PHP MySQL dan sandaran dan pemulihan Memcached.

Dengan pertambahan berterusan aplikasi rangkaian dan pengembangan berterusan volum data, kecekapan membaca dan menulis data telah menjadi salah satu faktor penting yang mempengaruhi prestasi aplikasi. Aplikasi teknologi caching dapat menyelesaikan masalah ini dengan baik. Dalam aplikasi PHP, Memcached ialah pelayan cache yang paling biasa digunakan. Memcached ialah sistem caching objek memori teragih berprestasi tinggi yang boleh menyimpan data yang biasa digunakan dalam ingatan dan meningkatkan kecekapan pengambilan data. Artikel ini akan memperkenalkan cara menggunakan PHP dan Memcached untuk pengurusan cache, dan cara mengoptimumkan

Dengan perkembangan berterusan teknologi Internet, sumber audio dan video telah menjadi satu bentuk kandungan yang sangat penting di Internet, dan PHP, sebagai salah satu bahasa yang paling banyak digunakan dalam pembangunan rangkaian, juga sentiasa digunakan dalam bidang video. dan main balik audio. Walau bagaimanapun, dengan peningkatan bilangan pengguna tapak web audio dan video, banyak tapak web telah menemui masalah: dalam keadaan serentak yang tinggi, kelajuan pemprosesan audio dan video PHP menjadi perlahan dengan ketara, mengakibatkan masalah seperti ketidakupayaan untuk bermain dalam masa atau main balik tersekat. . Untuk menyelesaikan masalah ini, teknologi caching Memcached harus

Dengan perkembangan pesat aplikasi Internet moden, pengalaman pengguna adalah penting untuk kejayaan aplikasi. Bagaimana untuk memastikan prestasi tinggi dan ketersediaan tinggi aplikasi telah menjadi salah satu isu penting yang perlu diselesaikan oleh pembangun. Sebagai salah satu bahasa pengaturcaraan yang digunakan secara meluas, pemantauan dan pengoptimuman prestasi PHP juga sangat penting. Memcached ialah sistem caching objek memori teragih berprestasi tinggi yang boleh membantu aplikasi meningkatkan prestasi dan kebolehskalaan. Artikel ini akan memperkenalkan cara menggunakan PHP dan Memcached untuk melaksanakan pemantauan prestasi.

Dengan pertumbuhan pesat aplikasi moden, caching telah menjadi bahagian penting bagi banyak pembangun. Caching boleh meningkatkan prestasi aplikasi dan mengurangkan beban pelayan. Dalam CakePHP, satu cara untuk melaksanakan caching adalah dengan menggunakan Memcached. Memcached ialah sistem caching teragih berasaskan memori. Ia menyimpan data dalam ingatan dan boleh membaca dan menulis data dengan cepat. Dalam persekitaran berbilang pelayan, Memcached boleh menyimpan data dalam cara yang diedarkan dan berkongsinya melalui rangkaian. Bukan sahaja boleh
