Heim > Artikel > Backend-Entwicklung > Wie wähle ich zwischen der PHP-Version „Non Thread Safe“ und „Thread Safe“? Was ist der Unterschied?
PHP-Versionen sind unterteilt in „Non Thread Safe“ und „Non Thread Safe“ bezieht sich auf Nicht-Thread-Sicherheit und „Thread Safe“ bezieht sich auf Thread-Sicherheit. Wie wähle ich?
Der Unterschied zwischen Non Thread Safe und Thread Safe
ts(Thread-Safety ) Das heißt, Thread-Sicherheit Wenn ein Thread auf bestimmte Daten dieser Klasse zugreift, ist er geschützt und andere Threads können nicht darauf zugreifen ist mit dem Lesen fertig, andere Threads können es verwenden. Es kommt zu keiner Dateninkonsistenz oder Datenverschmutzung. Wählen Sie diese Version, wenn PHP im ISAPI-Modus geladen wird.
nts(Keine - Thread-sicherd. h. nicht threadsicher, d. h. es bietet keinen Datenzugriffsschutz. Es ist möglich, dass mehrere Threads die Daten nacheinander ändern, was zu fehlerhaften Daten führt. Wählen Sie diese Option, wenn PHP im schnellen CGI-Modus mit besserer Leistung ausgeführt wird;
ISAPI (Internet Server Application Programming Interface), bezieht sich normalerweise auf das Laden durch Der http-Server wird als Modul des von Microsoft vorgeschlagenen Servers ausgeführt, sodass er nur auf der Win-Plattform ausgeführt werden kann, z. B. Apache und IIS unter Win [man sagt, dass schnelles CGI stabiler funktioniert], während PHP unter Linux läuft im Apache-Modul oder php-fpm.
cgi (Common Gateway Interface) : Ein Tool für den HTTP-Server, um mit Ihrem Programm oder anderen Maschinen zu „kommunizieren“. Backend-Sprache, die mit dem Server kommuniziert. Zu diesem Zeitpunkt läuft PHP als eigenständiges Programm. Das Merkmal ist, dass es Speicher verbraucht.
Fast CGI. ist ein langlebiges CGI. Es kann jederzeit ausgeführt werden, solange es aktiviert ist Der Fork dauert jedes Mal. Diese Methode ist eine sprachunabhängige, skalierbare CGI-Architektur. Ihr Hauptverhalten besteht darin, den CGI-Interpreterprozess im Speicher zu halten und dadurch eine höhere Leistung zu erzielen.
Die ISAPI-Ausführungsmethode wird in Form einer dynamischen DLL-Bibliothek verwendet, die nach Anforderung durch den Benutzer ausgeführt werden kann. Sie verschwindet nicht sofort nach der Verarbeitung einer Benutzeranforderung, also Thread Sicherheitsüberprüfungen sind erforderlich, um die Ausführungseffizienz des Programms zu verbessern. Wenn Sie also ISAPI zur Ausführung von PHP verwenden, wird empfohlen, die ThreadSafe-Version zu wählen.
Die FastCGI-Ausführungsmethode verwendet einen einzelnen Thread zum Ausführen von Vorgängen, sodass keine Thread-Sicherheitsüberprüfungen erforderlich sind. Daher kann die Ausführungseffizienz verbessert werden, wenn FastCGI verwendet wird , Es wird empfohlen, die NonThread Safe-Version zu wählen.
Wie kann man also überprüfen, ob das aktuelle PHP Non Thread Safe (nicht Thread-sicher) oder Thread Safe (Thread-sicher) ist?
ist sehr einfach. Drucken Sie phpinfo()
und aktivieren Sie die Option Thread Safety
in den PHP-Versionsinformationen. Diese Option ist enable
(threadsicher), andernfalls ist sie es Thread Safe
(Sicherheitsversion ohne Thread). None Thread Safe
Das obige ist der detaillierte Inhalt vonWie wähle ich zwischen der PHP-Version „Non Thread Safe“ und „Thread Safe“? Was ist der Unterschied?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!