Heim > häufiges Problem > Hauptteil

Was bedeutet Memcache?

Guanhui
Freigeben: 2020-06-24 17:22:51
Original
3614 Leute haben es durchsucht

Memcache ist ein kostenloses, leistungsstarkes, verteiltes Speicherobjekt-Caching-System. Dieses System kann die Zugriffsgeschwindigkeit von Websites verbessern, insbesondere für einige große Websites, die häufigen Zugriff auf Datenbanken erfordern ist sehr bedeutsam.

Was bedeutet Memcache?

Warum Memcache verwenden?

wird hauptsächlich in dynamischen Webanwendungen verwendet, um die Belastung der Datenbank zu reduzieren.

Es reduziert die Anzahl der Datenbanklesevorgänge, indem Daten und Objekte im Speicher zwischengespeichert werden,

und erhöht dadurch die Geschwindigkeit des Website-Zugriffs.

Das Implementierungsprinzip von Memcache

Die von Memcache verarbeiteten Atome sind jeweils Schlüssel und Wert. Der Schlüssel wird über eine Hash-Tabelle in einen Hash-Schlüssel umgewandelt bequem für Suche, Vergleich und Hashing möglich. Gleichzeitig verwendet mem einen zweistufigen Hash, der über eine Hash-Tabelle verwaltet wird.

Memcache besteht aus zwei Kernkomponenten: Server und Client

Bei einer Memcache-Komponentenabfrage ermittelt der Client zunächst den Standort von kv auf der Dienstseite anhand des Hash-Werts des Schlüssels beim Server Seite bestimmt Anschließend sendet der Client eine Anfrage an den Server. Lassen Sie es die genauen Daten herausfinden, da es keine Interaktion und kein Multicast-Protokoll gibt, sodass Mem nur minimale Auswirkungen auf das Netzwerk hat.

Memcache-Funktionen und -Einschränkungen

in Es gibt Die Menge der Artikeldaten, die in Memcached gespeichert werden können, ist unbegrenzt, solange genügend Speicher vorhanden ist.

Ein zwischengespeicherter einzelner Prozess kann in einem 32-Bit-System bis zu 2 GB Speicher verwenden. In einem 64-Bit-System gibt es keine Begrenzung. Dies liegt daran, dass das 32-Bit-System einen einzelnen Prozess begrenzt Um bis zu 2 GB Speicher zu nutzen, können mehrere Memcached-Prozesse auf mehreren Ports geöffnet werden.

Maximale Datenablaufzeit von 30 Tagen. Konstante REALTIME_MAXDELTA

60*60*24* 30-Steuerung

Die maximale Schlüssellänge beträgt 250 Bytes. Wenn sie größer als diese Länge ist, kann sie nicht gespeichert werden. Konstante KEY_MAX_LENGTH 250-Steuerung

Die maximale Datenmenge für ein einzelnes Element beträgt 1 MB. Daten, die 1 MB überschreiten, werden nicht gespeichert. Konstante POWER_BLOCK 1048576 Steuerung,

Dies ist die Standardplattengröße

Die maximale Anzahl gleichzeitiger Verbindungen ist 200, gesteuert durch freetotal in conn_init(), die maximale Anzahl weicher Verbindungen beträgt 1024, über

Settings.maxconns=1024 zur Steuerung

Parameter im Zusammenhang mit der Platzbelegung: Settings.factor= 1.25, Settings.chunk_size=48, wirkt sich auf die Slab-Datenbelegung und die Stepping-Methode aus.

memcached ist ein nicht blockierender Socket-Kommunikationsdienst, der auf der libevent-Bibliothek basiert. Aufgrund der nicht blockierenden Kommunikation beträgt die Lese- und Schreibgeschwindigkeit des Speichers sehr schnell.

Memcached ist in Server und Clients unterteilt und wird häufig in verteilten Diensten verwendet.

Memcached ist als kleine Datenverteilungsplattform sehr effektiv.

Memcached hat eine Eins-zu-Eins-Entsprechung zwischen Schlüsseln und Werten. Die Standardwertgröße beträgt 1 MB, was einer Platte entspricht, wenn Sie 2 MB Werte speichern möchten (kontinuierlich), Sie können nicht zwei Platten verwenden, da die beiden Platten nicht kontinuierlich sind und nicht im Speicher gespeichert werden können. Wenn mehrere Schlüssel und Werte gespeichert werden, muss die Größe der Platten geändert werden nicht vollständig ausgenutzt, weitere Daten werden nicht gespeichert.

memcached kann bereits Sprachclients wie C/C++, Perl, PHP, Python, Ruby, Java, C#, Postgres, Chicken Scheme, Lua, MySQL und Protocol unterstützen.

Empfohlenes Tutorial: „PHP

Das obige ist der detaillierte Inhalt vonWas bedeutet Memcache?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!