Arkitekturen af Nginx er designet til at opnå høj ydeevne, stabilitet og skalerbarhed. Nedenfor er en detaljeret beskrivelse af nøglekomponenterne i arkitekturen Nginx:
Master Process
Dette er hovedprocessen i Nginx, også kendt som forældreprocessen. Dens ansvar er at styre arbejdsprocesser og andre almindelige ledelsesopgaver. Den master process læser og behandler konfigurationen og opretter derefter arbejdsprocesser til at håndtere anmodninger fra klienter.
Worker Process
Når først de er skabt af master process, bliver arbejdsprocesserne underordnede processer af Nginx. Antallet af arbejdsprocesser kan konfigureres til at opfylde systemets ydeevne- og ressourcekrav. Hver worker process fungerer uafhængigt, deler ikke hukommelse og kommunikerer ikke direkte med hinanden, hvilket øger stabiliteten af Nginx .
Event-driven Architecture
Nginx bruger en event-driven architecture til at håndtere anmodninger. I stedet for at bruge separate tråde for hver anmodning, Nginx bruger asynkrone funktioner til at håndtere hændelser. Dette gør det muligt for en enkelt worker process at håndtere flere anmodninger samtidigt, hvilket optimerer systemressourcer og sikrer høj ydeevne.
Event Module
Nginx understøtter forskellige event module til at arbejde med operativsystemet og netværksinfrastrukturen. Disse moduler hjælper med Nginx at interagere med kernen og undgår unødig blokering og ventetid, hvilket reducerer belastningen på systemet.
Worker Connections
Dette er antallet af forbindelser, som hver worker process kan håndtere samtidigt. Denne konfiguration tillader tilpasning af antallet af forbindelser for at sikre optimal ydeevne baseret på systemressourcer og klientanmodningstrafik.
Proxy og Load Balancing
Nginx kan fungere som en proxy server, så den kan dirigere anmodninger fra klienter til backend-applikationsservere i systemet. Dette muliggør udrulning af distribuerede applikationer og load balancing på tværs af flere servere, hvilket forbedrer ydeevne og pålidelighed.
Takket være dens fleksible og højtydende arkitektur Nginx er den blevet en af de mest populære webservere og proxyer, der er meget udbredt over hele kloden, og opfylder de stigende krav til behandling af anmodninger og data på internettet.