Wie PHP hohe Parallelität löst
1. Trennen Sie Anwendungen und statische Ressourcen
Legen Sie statische Ressourcen (JS, CSS, Bilder usw.) auf einen dedizierten Server.
2. Seiten-Caching
Das Caching der von der Anwendung generierten Seiten kann viele CPU-Ressourcen einsparen. Für einige Seiten, auf denen sich häufig Daten ändern, können Sie diese mit Ajax verarbeiten.
Videokursempfehlung →: "Zehn-Millionen-Level-Daten-Parallelitätslösung (Theorie + Praxis)"
3. Cluster und verteilt
Cluster, mehrere Server haben die gleichen Funktionen und dienen hauptsächlich der Umleitung. Verteilt, wodurch verschiedene Unternehmen auf verschiedenen Servern untergebracht werden können, um eine Anfrage zu verarbeiten, wodurch die Verarbeitungsgeschwindigkeit einer Anfrage erhöht wird. Es ist weiter in statische Ressourcencluster und Anwendungscluster unterteilt. Letzteres ist komplizierter und häufig müssen Probleme wie die Sitzungssynchronisierung berücksichtigt werden.
4. Reverse-Proxy
Der Server, auf den der Client direkt zugreift, ist nicht der Server, der direkt Dienste von anderen Servern erhält und die Ergebnisse dann zurückgibt Benutzer.
Proxyserver und Reverse-Proxyserver:
Der Proxyserver greift in unserem Namen auf Ressourcen zu und gibt dann die Ergebnisse zurück. Greifen Sie beispielsweise auf den Proxyserver des externen Netzwerks zu. Wenn wir normalerweise auf einen Server zugreifen, ruft der Server selbst einen anderen Server auf.
Wir nutzen den Proxy-Server aktiv für unsere Zwecke und benötigen keinen eigenen Domänennamen. Der Reverse-Proxy wird vom Server selbst verwendet und wir wissen nicht, dass er einen eigenen Domänennamen hat.
5. CDN
CDN ist ein spezieller Cluster-Seiten-Cache-Server im Vergleich zu mehreren Seiten-Cache-Servern in einem normalen Cluster Zuteilungsanfragen funktionieren 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.
Verteilungsmethode:
ist kein gewöhnlicher Lastausgleich, sondern wird bei der Auflösung von Domänennamen von einem speziellen CDN-Domänennamenauflösungsserver zugewiesen.
Der allgemeine Ansatz ist: Der ISP verwendet CNAME, um den Domänennamen in einen bestimmten Domänennamen aufzulösen, und verwendet dann einen dedizierten CDN-Server, um den aufgelösten Domänennamen aufzulösen (kehren Sie zum Browser zurück und greifen Sie dann darauf zu). an den entsprechenden CDN-Knoten. Jeder Knoten kann auch mit mehreren Servern geclustert werden.
Sie können wissen, dass die Geschäftslogik für den Umgang mit hoher Parallelität wie folgt lautet:
Front-End: asynchrone Anfrage + Ressourcenstatik + CDN
Zurück- Ende: Anforderungswarteschlange + Abfrageverteilung + Lastausgleich + gemeinsam genutzter Cache
Datenschicht: Redis-Cache + Datentabelle + Schreibwarteschlange
Speicher: RAID-Array + Hot Standby
Netzwerk : DNS-Polling + DDOS-Angriffsschutz
Empfohlenes Tutorial: PHP-Video-Tutorial
Das obige ist der detaillierte Inhalt vonSo lösen Sie hohe Parallelität in PHP. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Der Artikel vergleicht Säure- und Basisdatenbankmodelle, wobei die Eigenschaften und angemessene Anwendungsfälle beschrieben werden. Säure priorisiert die Datenintegrität und -konsistenz, geeignet für finanzielle und E-Commerce-Anwendungen, während sich die Basis auf die Verfügbarkeit konzentriert und

In dem Artikel wird das Sicherung von PHP -Dateien -Uploads erläutert, um Schwachstellen wie die Code -Injektion zu verhindern. Es konzentriert sich auf die Dateitypvalidierung, den sicheren Speicher und die Fehlerbehandlung, um die Anwendungssicherheit zu verbessern.

In Artikel werden Best Practices für die Validierung der PHP-Eingabe erörtert, um die Sicherheit zu verbessern und sich auf Techniken wie die Verwendung integrierter Funktionen, den Whitelist-Ansatz und die serverseitige Validierung zu konzentrieren.

In dem Artikel werden Strategien zur Implementierung der API-Rate in PHP erörtert, einschließlich Algorithmen wie Token-Bucket und Leaky Bucket sowie Bibliotheken wie Symfony/Rate-Limiter. Es deckt auch die Überwachung, die dynamischen Einstellungsgeschwindigkeiten und die Hand ab

Der Artikel beschreibt die Vorteile der Verwendung von Password_hash und Passage_verify in PHP zum Sichern von Passwörtern. Das Hauptargument besteht

In dem Artikel werden OWASP Top 10 Schwachstellen in PHP- und Minderungsstrategien erörtert. Zu den wichtigsten Problemen gehören die Injektion, die kaputte Authentifizierung und XSS mit empfohlenen Tools zur Überwachung und Sicherung von PHP -Anwendungen.

In dem Artikel werden Strategien erörtert, um XSS-Angriffe in PHP zu verhindern, sich auf die Eingabe von Eingaben, die Ausgabecodierung und die Verwendung von Bibliotheken und Frameworks für Sicherheitsförderungen zu konzentrieren.

In dem Artikel wird die Verwendung von Schnittstellen und abstrakten Klassen in PHP erörtert und konzentriert sich darauf, wann sie jeweils verwendet werden sollen. Schnittstellen definieren einen Vertrag ohne Implementierung, der für nicht verwandte Klassen und multiple Vererbung geeignet ist. Abstrakte Klassen liefern eine gemeinsame Funktion


Heiße KI -Werkzeuge

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool
Ausziehbilder kostenlos

Clothoff.io
KI-Kleiderentferner

Video Face Swap
Tauschen Sie Gesichter in jedem Video mühelos mit unserem völlig kostenlosen KI-Gesichtstausch-Tool aus!

Heißer Artikel

Heiße Werkzeuge

Notepad++7.3.1
Einfach zu bedienender und kostenloser Code-Editor

PHPStorm Mac-Version
Das neueste (2018.2.1) professionelle, integrierte PHP-Entwicklungstool

SAP NetWeaver Server-Adapter für Eclipse
Integrieren Sie Eclipse mit dem SAP NetWeaver-Anwendungsserver.

MinGW – Minimalistisches GNU für Windows
Dieses Projekt wird derzeit auf osdn.net/projects/mingw migriert. Sie können uns dort weiterhin folgen. MinGW: Eine native Windows-Portierung der GNU Compiler Collection (GCC), frei verteilbare Importbibliotheken und Header-Dateien zum Erstellen nativer Windows-Anwendungen, einschließlich Erweiterungen der MSVC-Laufzeit zur Unterstützung der C99-Funktionalität. Die gesamte MinGW-Software kann auf 64-Bit-Windows-Plattformen ausgeführt werden.

VSCode Windows 64-Bit-Download
Ein kostenloser und leistungsstarker IDE-Editor von Microsoft
