Heim Schlagzeilen PHP-Nginx-Optimierung mit hoher Parallelität und hohem Datenverkehr

PHP-Nginx-Optimierung mit hoher Parallelität und hohem Datenverkehr

Jun 27, 2018 pm 02:53 PM

Unsere Website kann derzeit Dutzende Millionen PVs und Millionen Parallelität verarbeiten. Ich habe ein wenig Erfahrung in der PHP+Nginx-Optimierung, also werde ich es aufschreiben, um einige Aufzeichnungen zu machen.

1.TCP-Sockets und Unix-Sockets

Unix-Sockets bieten eine bessere Leistung als TCP-Sockets (da weniger E/A-Daten gelesen und geschrieben werden und weniger Kontextwechsel stattfinden).

upstream backend 
{ 
  server unix:/var/run/fastcgi.sock; 
  # server 127.0.0.1:8080; 
}
Nach dem Login kopieren

2. Access_log deaktivieren oder optimieren

Bei Zugriffen mit großem Datenverkehr führt ein größerer Zugriff dazu, dass das Zugriffsprotokoll sehr große Datenträgermengen liest und schreibt. Wenn die Protokollierung nicht erforderlich ist, kann sie deaktiviert werden.

access_log off; 
log_not_found off;
Nach dem Login kopieren

oder schalten Sie die Pufferung ein

access_log /var/log/nginx/access.log main buffer=32k;
Nach dem Login kopieren

3. Schalten Sie Gzip ein

gzip on;
gzip_min_length 1k;
gzip_buffers 4 16k;
gzip_http_version 1.0;
gzip_comp_level 2;
gzip_types text/plain text/css application/json application/x-javascript text/xml application/xml application/xml+rss text/javascript;
gzip_vary on;
gzip_proxied expired no-cache no-store private auth;
gzip_disable "MSIE [1-6]\.";
Nach dem Login kopieren


4. Optimieren Sie das Ausgabe-Caching

fastcgi_buffers 256 16k; 
fastcgi_buffer_size 128k; 
fastcgi_connect_timeout 3s; 
fastcgi_send_timeout 120s; 
fastcgi_read_timeout 120s; 
fastcgi_busy_buffers_size 256k; 
fastcgi_temp_file_write_size 256k;
Nach dem Login kopieren

5. Arbeitsprozesse optimieren

Nginx ist Multiprozess statt Multithread. Wir müssen die prozessbezogene Konfiguration wie folgt optimieren.

Schauen Sie sich zunächst die Anzahl der Prozessoren auf dem Server an.

cat /proc/cpuinfo | grep processor
Nach dem Login kopieren

Dann legen Sie worker_processes fest, und die Anzahl der Prozesse ist die Anzahl der erhaltenen Prozessoren. worker_connections ist die maximale Anzahl von Verbindungen, die jeder Prozess öffnen kann, die erhöht werden kann. Hier ist eine Referenz.

# We have 16 cores 
worker_processes 16; 
# connections per worker 
events 
{ 
  worker_connections 4096; 
  multi_accept on; 
}
 记住multi_accept 必须打开。
Nach dem Login kopieren
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

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

Video Face Swap

Video Face Swap

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

Heißer Artikel

<🎜>: Bubble Gum Simulator Infinity - So erhalten und verwenden Sie Royal Keys
4 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
Nordhold: Fusionssystem, erklärt
4 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
Mandragora: Flüstern des Hexenbaum
3 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Heiße Themen

Java-Tutorial
1674
14
PHP-Tutorial
1278
29
C#-Tutorial
1257
24