关于Memcached作原理的详细介绍【总结】
本篇文章主要给大家详细介绍关于Memcached 工作原理。大家也可以参考关注Memcached视频教程或者Memcached手册。
一、简介:
Memcache是一个高性能的分布式的内存对象缓存系统,通过在内存里维护一个统一的巨大的hash表,它能够用来存储各种格式的数据,包括图像、视频、文件以及数据库检索的结果等。简单的说就是将数据调用到内存中,然后从内存中读取,从而大大提高读取速度。Memcached是以守护程序方式运行于一个或多个服务器中,随时会接收客户端的连接和操作。
二、特性:
1.在 Memcached中可以保存的item数据量是没有限制的,只要内存足够 。
2.Memcached单进程最大使用内存为2G,要使用更多内存,可以分多个端口开启多个Memcached进程
3.最大30天的数据过期时间,设置为永久的也会在这个时间过期,常量REALTIME_MAXDELTA
4.最大键长为250字节,大于该长度无法存储,常量KEY_MAX_LENGTH 250控制
5.单个item最大数据是1MB,超过1MB数据不予存储,常量POWER_BLOCK 1048576进行控制,
6.它是默认的slab大小
7.最大同时连接数是200,通过
conn_init()中的freetotal进行控制,最大软连接数是1024,通过settings.maxconns=1024
进行控制 ,跟空间占用相关的参数:settings.factor=1.25, settings.chunk_size=48,
影响slab的数据占用和步进方式
8.memcached是一种无阻塞的socket通信方式服务,基于libevent库,由于无阻塞通信,对内存读写速度非常之快。
9.memcached分服务器端和客户端,可以配置多个服务器端和客户端,应用于分布式的服务非常广泛。
10.memcached作为小规模的数据分布式平台是十分有效果的。
11.memcached是键值一一对应,key默认最大不能超过128个字 节,value默认大小是1M,也就是一个slabs,如果要存2M的值(连续的),不能用两个slabs,因为两个slabs不是连续的,无法在内存中 存储,故需要修改slabs的大小,多个key和value进行存储时,即使这个slabs没有利用完,那么也不会存放别的数据。
12.价值不高的数据放入,不然服务器宕了,那么数据全部丢失
三、适用场合
1.分布式应用。由于memcached本身基于分布式的系统,所以尤其适合大型的分布式系统。
2.数据库前段缓存。数据库常常是网站系统的瓶颈。数据库的大并发量访问,常常造成网站内存溢出。当然我们也可以使用Hibernate的缓存机制。但memcached是基于分布式的,并可独立于网站应用本身,所以更适合大型网站进行应用的拆分。
3.服务器间数据共享。举例来讲,我们将网站的登录系统、查询系统拆分为两个应用,放在不同的服务器上,并进行集群,那这个时候用户登录后,登录信息如何从登录系统服务器同步到查询系统服务器呢?这时候,我们便可以使用memcached,登录系统将登录信息缓存起来,查询系统便可以获得登录信息,就像获取本地信息一样。
四、不适用场合
那些不需要“分布”的,不需要共享的,或者干脆规模小到只有一台服务器的应用,memcached不会带来任何好处,相反还会拖慢系统效率,因为网络连接同样需要资源
本篇文章具有一定的参考价值,希望对大家有需要的朋友有所帮助!
Atas ialah kandungan terperinci 关于Memcached作原理的详细介绍【总结】. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

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

Video Face Swap
Tukar muka dalam mana-mana video dengan mudah menggunakan alat tukar muka AI percuma kami!

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

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