Heim >Backend-Entwicklung >PHP-Tutorial >Umgang mit hoher Parallelität von Big Data in PHP
Big-Data-Lösung
Cache verwenden: (Empfohlenes Lernen: PHP-Video-Tutorial)
Verwendung: 1. Verwenden Sie das Programm, um direkt im Speicher zu speichern. Verwenden Sie hauptsächlich Map, insbesondere ConcurrentHashMap.
Caching-Framework verwenden. Häufig verwendete Frameworks: Ehcache, Memcache, Redis usw.
Die kritischste Frage ist: Wann soll der Cache und sein Ungültigmachungsmechanismus erstellt werden?
Zum Puffern leerer Daten: Speichern Sie diese am besten mit einem bestimmten Typwert, um zwischen leeren Daten und nicht zwischengespeicherten Zuständen zu unterscheiden.
Verteilte Datenbank
Speichern Sie verschiedene Tabellen in verschiedenen Datenbanken und dann auf verschiedenen Servern. Einige komplexe Probleme, wie z. B. Transaktionsverarbeitung und Abfragen mehrerer Tabellen.
NoSql und Hadoop
NoSql, nicht nur SQL. Es unterliegt nicht so vielen Einschränkungen wie relationale Datenbanken und ist flexibler und effizienter.
Hadoop schichtet die Daten in einer Tabelle in mehrere Blöcke und speichert sie auf mehreren Knoten (verteilt). Jedes Datenelement wird auf mehreren Knoten (Cluster) gespeichert. Cluster können dieselben Daten parallel verarbeiten und die Datenintegrität gewährleisten.
Lösung mit hoher Parallelität
Trennung von Anwendungen und statischen Ressourcen.
Legen Sie statische Ressourcen (JS, CSS, Bilder usw.) auf einen dedizierten Server.
Seiten-Caching
Zwischenspeichern Sie die von der Anwendung generierten Seiten, um viele CPU-Ressourcen zu sparen.
Für einige Seiten, auf denen sich häufig Daten ändern, können Sie diese mit Ajax verarbeiten.
Cluster und verteilt
Cluster, mehrere Server haben die gleichen Funktionen und dienen hauptsächlich der Umleitung.
Verteilt, wodurch verschiedene Unternehmen auf verschiedenen Servern platziert werden können, um eine Anfrage zu verarbeiten, wodurch die Verarbeitungsgeschwindigkeit einer Anfrage erhöht wird.
ist in statische Ressourcencluster und Anwendungscluster unterteilt. Letzteres ist komplizierter und häufig müssen Probleme wie die Sitzungssynchronisierung berücksichtigt werden.
Reverse-Proxy
Der Server, auf den der Client direkt zugreift, ist nicht der Server, der Dienste direkt bereitstellt. Er ruft Ressourcen von anderen Servern ab und gibt die Ergebnisse dann an den Benutzer zurück .
CDN
CDN ist ein spezieller Cluster-Seitenpufferserver. Im Vergleich zu den mehreren Seitenpufferservern eines gewöhnlichen Clusters besteht der Hauptunterschied in seinem Speicherort und seiner Zuweisung Anfragen anders.
CDN-Server sind über das ganze Land verteilt. Nach Eingang einer Anfrage wird diese dem am besten geeigneten CDN-Serverknoten zugewiesen, um die Daten zu erhalten. Jeder seiner CDN-Knoten ist ein Seiten-Caching-Server.
Das obige ist der detaillierte Inhalt vonUmgang mit hoher Parallelität von Big Data in PHP. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!