Heim  >  Artikel  >  Backend-Entwicklung  >  Memcached-Cache-Ausführungsprozess

Memcached-Cache-Ausführungsprozess

WBOY
WBOYOriginal
2016-08-08 09:23:351061Durchsuche

Warum kann der Memcached-Cache eine hohe gleichzeitige Lese- und Schreibgeschwindigkeit unterstützen?

1. Multiplex-I/O-Modell

Beim herkömmlichen I/O wartet das System möglicherweise, bis die I/O-Verbindung eines Benutzers bereit ist Wenn der Server nicht erreichbar ist, erhalten sie aufgrund einer Systemüberlastung keine Antwort.

Das Multiplex-I/O-Modell ist ein Nachrichtenbenachrichtigungsmodus. Nachdem der Benutzer für die I/O-Verbindung bereit ist, benachrichtigt uns das System, dass die Verbindung für die I/O bereit ist, sodass sie nicht blockiert wird Die Verbindung eines Benutzers, weshalb memcached sie unterstützt

Hohe gleichzeitige Lese- und Schreibgeschwindigkeit

2. Multithreading-Modell

Das Multithreading-Modell ist unterteilt in:

Haupt-Thread: main Akzeptieren Sie die Client-Verbindung, übertragen Sie die Verbindung in die CQ-Warteschlange des Sub-Threads und benachrichtigen Sie den Sub-Thread, dass eine Client-Verbindung verarbeitet werden muss
Untergeordneter Thread: Nach Erhalt der Benachrichtigung wird der Sub-Thread gesendet -thread entfernt die Verbindung aus der CQ-Warteschlange und registriert sich bei libevent, um die Lese- und Schreibvorgänge des Clients zu überwachen

Bitte laden Sie den Quellcode hoch, wenn Sie Zeit haben!


Das Obige stellt den Ausführungsprozess des Memcached-Caching vor, einschließlich inhaltlicher Aspekte. Ich hoffe, dass es für Freunde hilfreich ist, die sich für PHP-Tutorials interessieren.

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