logo

Cos'è NGINX?

    NGINXsi pronuncia come 'engine-ex'.
  • È un server Web open source, veloce, leggero e ad alte prestazioni che può essere utilizzato per servire file statici.
  • NGINX è considerato il popolare server web dietro il server web Apache e IIS di Microsoft.
  • Nella sua versione iniziale, NGINX funzionava per i servizi web HTTP. Oggi, tuttavia, funge anche da server proxy inverso per i protocolli HTTP, HTTPS, SMTP, IMAP, POP3, d'altro canto viene utilizzato anche per il bilanciamento del carico HTTP, la cache HTTP e il proxy e-mail per IMAP, POP3 e SMTP.
  • NGINX migliora la distribuzione di contenuti e applicazioni, migliora la sicurezza e facilita la scalabilità e la disponibilità per i siti Web più frequentati su Internet.
  • In breve, possiamo dire che Nginx è semplicemente un tipo di software utilizzato nei server Web per soddisfare richieste simultanee.
  • In precedenza installavamo Apache nei server Web per gestire queste funzioni, ma man mano che il mondo cresce e richiede più cose contemporaneamente, viene al mondo il termine concorrenza e nginx viene lanciato per la stessa cosa.
  • Nginx è stato creato da Igor Sysoev, con il suo 1strilascio pubblico nell'ottobre 2004 come tentativo di rispondere alla domanda Problema C10k . Dove C10k è la sfida di gestire 10.000 connessioni contemporaneamente. Oggi ci sono ancora più connessioni che i server web devono gestire. Per questo motivo, nginx offre un’architettura asincrona e basata sugli eventi. Questa caratteristica rende nginx il server più affidabile in termini di scalabilità e velocità.
  • Alcune aziende di alto profilo che utilizzano Nginx includono IBM, Google, Atlassian, Autodesk, GitLab, DuckDuckGo, T-Mobile, Microsoft, Adobe, Salesforce, VMware, LinkedIn, Cisco, Twitter, Apple, Intel, Facebook e molte altre.

Perché utilizzare NGINX?

NGINX fornisce vari servizi come proxy inverso, bilanciatore del carico e servizi di rete con limite di velocità. Il proxy inverso è utile se disponiamo di più servizi Web in ascolto su varie porte e abbiamo bisogno di un singolo endpoint pubblico per reindirizzare le richieste internamente. Ciò ci consentirebbe di ospitare più nomi di dominio sulla porta 80 utilizzando una combinazione di diversi NodeJ, Go e Java per alimentare servizi Web separati dietro le quinte.

Nginx può gestire la registrazione, l'inserimento nella lista nera, il bilanciamento del carico e la fornitura di file statici mentre i servizi Web si concentrano su ciò che devono fare.

La configurazione di Nginx è più semplice di Apache httpd. Nginx è stato progettato per un’elevata concorrenza ed è molto veloce.

Come funziona NGINX?

Prima di conoscere il processo di NGINX, diamo un'occhiata a come funziona un server web. Quando chiediamo di aprire una pagina web, il browser contatta il server. Quindi il server cerca i file richiesti per la pagina e li invia al browser. Questo è l'unico tipo di lavoro più semplice per una richiesta.

Anche l'esempio precedente è considerato come un thread singolo. Tradizionalmente, i server web come Apache creano un singolo thread per ogni richiesta, ma Nginx non funziona in questo modo. Nginx funziona con un'architettura asincrona e guidata dagli eventi. Segue in modo intelligente gli eventi di un processo.

Nginx ha diviso il suo lavoro in processo lavorativo E collegamenti dei lavoratori . Qui le connessioni di lavoro vengono utilizzate per gestire la richiesta effettuata e la risposta ottenuta dagli utenti sul server web; allo stesso tempo, queste richieste vengono passate al processo genitore chiamato processo di lavoro.

Vediamo un esempio per il server Nginx che gestisce richieste simultanee di file MP3 e MP4: -

Cos'è NGINX

Dal diagramma precedente possiamo vedere che una singola connessione di lavoro può gestire circa 1024 connessioni alla volta. È la migliore capacità di una connessione di lavoro. Potrebbero esserci 'n' numeri del processo di lavoro in Nginx in base al tipo di server di cui disponiamo e ogni processo di lavoro gestisce lavori diversi in modo da poter gestire più numeri di richieste simultanee.

Infine, il processo di lavoro trasferisce le richieste al processo master Nginx che risponde direttamente solo alle richieste univoche.

Poiché la connessione lavoratore può gestire fino a 1024 richieste simili. Per questo motivo Nginx può gestire migliaia di richieste senza alcuna difficoltà. È anche il motivo per cui Nginx è diventato un server eccellente per siti Web affollati come e-commerce, motori di ricerca e archiviazione nel cloud.

Caratteristiche di NGINX

Alcune funzionalità di Nginx sono le seguenti:

  • Proxy inverso con memorizzazione nella cache
  • IPv6
  • Bilancio del carico
  • Socket Web
  • Gestione di file statici, file di indice e indicizzazione automatica
  • Supporto FastCGI con memorizzazione nella cache
  • Riscrittura e reindirizzamento degli URL

Cosa possono fare per te NGINX e NGINX Plus?

Nginx e Nginx plus sono i migliori server Web e soluzioni di distribuzione delle applicazioni utilizzati da siti Web ad alto traffico come Netflix, Dropbox e Zynga. I siti Web più frequentati come Google, Netflix, Twitter, Facebook, ecc. si affidano a Nginx e Nginx Plus per fornire i propri contenuti in modo sicuro, affidabile e rapido.

  • Nginx rende obsoleti i bilanciatori di carico hardware: Nginx è open source, meno costoso e più configurabile dei bilanciatori di carico hardware ed è progettato per le moderne architetture cloud.
    Nginx plus fornisce supporto per la riconfigurazione al volo e si integra con i moderni strumenti DevOps per un monitoraggio più semplice.
  • NNginx è uno strumento multifunzione: con l'uso di Nginx, possiamo utilizzare lo stesso strumento come bilanciatore del carico, cache dei contenuti, proxy inverso e server web. Riduce al minimo la quantità di strumenti che la configurazione della nostra organizzazione deve mantenere.
    Nginx Plus include la risposta rapida all'assistenza clienti, così possiamo facilmente ottenere aiuto per diagnosticare qualsiasi parte del nostro stack che utilizza Nginx Plus e Nginx.
  • NGINX continua ad evolversi. Negli ultimi dieci anni, NGINX è stata in prima linea nello sviluppo del Web moderno e ha contribuito a aprire la strada su tutto, da HTTP/2 al supporto dei microservizi.
    Poiché lo sviluppo e la distribuzione delle applicazioni web continuano ad evolversi, NGINX Plus aggiunge continuamente funzionalità per consentire una distribuzione delle applicazioni impeccabile.