GNU/Linux >> Linux Esercitazione >  >> Linux

Cos'è NGINX? Come funziona?

NGINX, pronunciato come "engine-ex", ha avuto il suo rilascio ufficiale nell'ottobre 2004. Il creatore del software, Igor Sysoev, ha iniziato il suo progetto nel 2002 come tentativo di rispondere al problema C10k. C10k è la sfida di gestire diecimila connessioni contemporaneamente.

Oggi ci sono ancora più connessioni che i server web devono gestire. Per questo motivo, NGINX offre un'architettura asincrona e basata su eventi. Questa caratteristica rende NGINX uno dei server più affidabili per velocità e scalabilità.

Grazie alla sua superba capacità di gestire molte connessioni e velocità, molti siti Web ad alto traffico hanno utilizzato il servizio di NGINX. Alcuni di questi giganti online sono Google, Netflix, Adobe, Cloudflare, WordPress.com e molti altri.

Come funziona NGINX?

Prima di saperne di più su NGINX, diamo un'occhiata a come funziona un server web. Quando qualcuno fa una richiesta per aprire una pagina web, il browser contatta il server di quel sito web. Quindi, il server cerca i file richiesti per la pagina e li invia al browser. Questo è solo il tipo più semplice di richiesta.

Anche l'esempio sopra è considerato come un thread singolo. I server Web tradizionali creano un singolo thread per ogni richiesta, ma NGINX non funziona in questo modo. Come affermato in precedenza, NGINX funziona con un'architettura asincrona basata sugli eventi. Significa che thread simili sono gestiti in un processo di lavoro e ogni processo di lavoro contiene unità più piccole chiamate connessioni di lavoro. L'intera unità è quindi responsabile della gestione dei thread di richiesta. Le connessioni di lavoro consegnano le richieste a un processo di lavoro, che le invierà anche al processo principale. Infine, il processo principale fornisce il risultato di tali richieste.

Può sembrare semplice, ma una connessione di lavoro può gestire fino a 1024 richieste simili. Per questo motivo, NGINX può elaborare migliaia di richieste senza alcuna difficoltà. È anche il motivo per cui NGINX è diventato eccellente per i siti Web affollati come l'e-commerce, i motori di ricerca e l'archiviazione su cloud.

NGINX vs Apache

Tra i server web più diffusi, Apache è uno dei principali rivali di NGINX. È in circolazione dagli anni '90 e ha anche una vasta comunità di utenti. Se sei curioso di sapere quale server web è più adatto alle tue esigenze, dai un'occhiata a questo breve e informativo confronto tra NGINX e Apache.

  • Supporto del sistema operativo
    La compatibilità è uno dei piccoli dettagli che dovresti considerare quando scegli il software. Sia NGINX che Apache possono essere eseguiti su molti sistemi operativi che supportano il sistema Unix. Sfortunatamente, le prestazioni di NGINX su Windows non sono eccezionali come su altre piattaforme.
  • Supporto per gli utenti
    Gli utenti, dai principianti ai professionisti, hanno sempre bisogno di una buona community che possa aiutare quando devono affrontare problemi. Sebbene sia NGINX che Apache abbiano il supporto per la posta e un forum Stack Overflow, Apache non ha il supporto della sua azienda, la Apache Foundation.
  • Prestazioni
    NGINX può eseguire simultaneamente 1000 connessioni di contenuto statico due volte più velocemente di Apache e utilizza un po' meno memoria. Se confrontati per le loro prestazioni sull'esecuzione di contenuti dinamici, tuttavia, entrambi hanno la stessa velocità. NGINX è una scelta migliore per coloro che hanno un sito web più statico.

Ulteriori letture su NGINX

  • Come creare un reindirizzamento utilizzando NGINX
  • Come installare WordPress utilizzando NGINX su Ubuntu

Conclusione

NGINX è un server Web che funge anche da proxy di posta elettronica, proxy inverso e bilanciamento del carico. La struttura del software è asincrona e guidata dagli eventi; che consente di elaborare più richieste contemporaneamente. NGINX è anche altamente scalabile, il che significa che il suo servizio cresce insieme al traffico dei suoi clienti. NGINX e Apache sono infatti due dei migliori server web sul mercato.


Linux
  1. Che cos'è un server Web e come funziona un server Web?

  2. Come funziona Awk '!a[$0]++'?

  3. Come funziona il bit appiccicoso?

  4. Come funziona rm? Cosa fa rm?

  5. Come funziona effettivamente sig_atomic_t?

Che cos'è il DNS inverso e come funziona?

Che cos'è VDI e come funziona?

Cos'è Docker? Come funziona?

Che cos'è il comando sorgente in Linux e come funziona?

Come funziona la memoria di scambio in Linux?

Come funziona un sistema di bilanciamento del carico? Che cos'è il bilanciamento del carico?