NGINX

NGINX

Tiedot
Luoja Igor Sysoev ja Maxim Konovalov ( d )
Kehittäjä NGINX, Inc. ( en ) ja Igor Sysoev
Ensimmäinen versio 4. lokakuuta 2004
Viimeinen versio 1.21,0 (25. toukokuuta 2021)
Edistynyt versio 1.19.1 (7. heinäkuuta 2020)
1.19.2 (11. elokuuta 2020)
1.19.0 (26. toukokuuta 2020)
1.19.3 (29. syyskuuta 2020)
1.19,4 (28. lokakuuta 2020)
1.19,5 (24. marraskuuta 2020)
1.19,6 (15. joulukuuta 2020)
1.19,7 (16. helmikuuta 2021)
1.19,8 (9. maaliskuuta 2021)
1.19,9 (30. maaliskuuta 2021)
Tallettaa hg.nginx.org/nginx ja github.com/nginx/nginx
Kirjoitettu VS
Käyttöjärjestelmä Kirjoita Unix ja Microsoft Windows
Lue muodot PEM-koodattu varmenne ( d ) , PEM-koodattu RSA-yksityinen avain ( d ) ja Nginx-sivustot käytettävissä ( d )
Tyyppi Web Server
Agent
Jakelupolitiikka ilmainen ohjelmisto
Lisenssi BSD: n 2 lauseke ( d )
Verkkosivusto nginx.org

Nginx avoimen lähdekoodin tai nginx (lausutaan [ˌɛndʒɪnɛks] ja kirjoitetaan myös nginx tai nginx ) on ilmainen ohjelmisto ja Web Server (tai HTTP ) ja käänteisen välityspalvelimen kirjoittanut Igor Sysoev , jonka kehitys alkoi vuonna 2002 varten 'venäläisen sivusto erittäin vilkkaalla liikenteellä ( Rambler ). Dokumentaatio on saatavana useilla kielillä. Se on ollut siitä lähtienhuhtikuu 2019, maailman eniten käytetty verkkopalvelin Netcraftin mukaan tai toiseksi eniten käytetty palvelin W3techsin mukaan.

F5 Networks osti NGINX Inc : n11. maaliskuuta 2019, 670 miljoonalla dollarilla.

Sen lähteet ovat saatavilla BSD-tyyppisellä lisenssillä .

Erityispiirteet

Asynkroninen palvelin

NGINX on asynkroninen järjestelmä toisin kuin synkroniset palvelimet, joissa kukin pyyntö hoidetaan erillisellä prosessilla . Sen sijaan, että käyttöjärjestelmä hyödyntäisi rinnakkaista arkkitehtuuria ja tehtävien aikajakoista multipleksointia , NGINX käyttää tilamuutoksia useiden yhteyksien hallintaan samanaikaisesti; jokaisen pyynnön käsittely on jaettu lukuisiin minitehtäviin ja mahdollistaa siten tehokkaan multipleksoinnin yhteyksien välillä. Usean prosessorin tietokoneiden hyödyntämiseksi voidaan käynnistää useita prosesseja. Tämä arkkitehtuurin valinta johtaa erittäin korkeaan suorituskykyyn sekä paljon pienempään kuormitukseen ja muistin kulutukseen kuin perinteiset HTTP-palvelimet, kuten Apache .

Modulaarisuus

NGINX on hyvin modulaarinen: vähän ydintä ja monia moduuleja, jotka täydentävät perustoimintoja. Jokainen moduuli voi toimia suodattimena syötteessä, lähdössä tai välisisällössä (välityspalvelimessa) lukemattomien takaisinsoittojen kautta . Siten esimerkiksi gzip- moduuli voi pakata dynaamisen sisällön lennossa   ennen lähettämistä.

Nämä moduulit linkitetään palvelimeen kääntämisen aikana. NGINX ei tue jaettuja dynaamisia kirjastoja. Tengine , nginx haarukka on Taobao lisätään tätä ominaisuutta, jota ei siirtää nginx.

Optimoinnit

Ydin perustuu vähäisiin, mutta optimaalisiin tietorakenteisiin, joiden tarkoituksena on vähentää järjestelmäkutsujen määrää, erityisesti kaikessa, mikä liittyy muistin allokointiin. Eri signalointimekanismeja voidaan käyttää, jotta saat kaiken irti käyttöjärjestelmästä (esimerkiksi: epoll Linuxissa ja kqueue BSD: ssä ). Asynkroninen arkkitehtuuri helpottaa käyttöjärjestelmän ajastinta ja edistää välimuistien tai prosessorien käyttöä .

Eri

Pääprosessi ohjaa palvelinprosessia tai -prosesseja. Tämä mahdollistaa kokoonpanomuutokset tai palvelimen suoritettavan tiedoston päivittämisen keskeyttämättä HTTP-palvelua.

Tuetut alustat

NGINX toimii GNU / Linux- , BSD- , Mac OS X- ja Solaris- käyttöjärjestelmissä  ; Edistyneestä versiosta 0.7.52 NGINX on saatavana myös Microsoft Windowsille .

Käyttää

Sen lisäksi, että NGINX on HTTP-palvelin, se voidaan määrittää käänteiseksi välityspalvelimeksi ( englanniksi  : käänteinen välityspalvelin ) Web- ja sähköpostin välityspalvelimeksi ( IMAP / POP3 ). NGINX: n yleisimpiä käyttökohteita ovat sen määrittäminen klassisena verkkopalvelimena staattisten tiedostojen palvelemiseen ja välityspalvelimena dynaamisille pyynnöille, jotka reititetään tyypillisesti FastCGI- liitännän kautta yhteen tai useampaan sovelluspalvelimeen kuormituksen tasausmekanismilla .

Nginx pystyy myös stream, samalla periaatteella kuin lighttpd kanssa mod_flv_streaming , videosisällön suoratoisto -tilassa ( streaming) on Flash player turvautumatta Flash Media Server. Tätä varten sillä on valinnainen http_glv_moduuli flv-videotiedoston suoratoistoon ja useita suoratoistomoduuleja, jotka voivat lähettää H.264 -koodattua videota . Sen avulla voit myös lähettää mp4: n sen valinnaisen http_mp4_module- moduulin ansiosta .

Sitä käytetään myös laajalti tuotannossa palvelemaan Ruby on Rails -sovelluksia Phusion Passenger -moduulin ansiosta . Useimmat Ruby on Rails sivustoja , joissa liikenteen käyttöön nginx (esim perusleiriin tai LinuxFr.org ).

Suosio

NGINX oli vähän tunnettu Venäjää lukuun ottamatta , ennen kuin Aleksandar Lazic aloitti englanninkielisen käännöksen vuonna 2006.

Huomautuksia ja viitteitä

  1. "  http://nginx.org/ru/CHANGES.ru  "
  2. Release 1.21.0  " ,25. toukokuuta 2021(luettu 21. kesäkuuta 2021 )
  3. "  https://nginx.org/en/CHANGES  " (käytetty 8. heinäkuuta 2020 )
  4. Julkaisu 1.19.1  " ,7. heinäkuuta 2020(käytetty 22. elokuuta 2020 )
  5. "  https://nginx.org/en/CHANGES  " (Pääsy 16. elokuuta 2020 )
  6. Release 1.19.2  " ,11. elokuuta 2020(käytetty 22. elokuuta 2020 )
  7. Release 1.19.0  " ,26. toukokuuta 2020(käytetty 22. elokuuta 2020 )
  8. Release 1.19.3  " ,29. syyskuuta 2020(käytetty 21. lokakuuta 2020 )
  9. Julkaisu 1.19.4  " ,27. syyskuuta 2020(käytetty 10. marraskuuta 2020 )
  10. Release 1.19.5  " ,24. marraskuuta 2020(käytetty 20. joulukuuta 2020 )
  11. Julkaisu 1.19.6  " ,15. joulukuuta 2020(käytetty 20. joulukuuta 2020 )
  12. Release 1.19.7  " ,16. helmikuuta 2021(käytetty 18. helmikuuta 2021 )
  13. release-1.19.8  " (käytetty 11. maaliskuuta 2021 )
  14. release-1.19.9  " (käytetty 9. huhtikuuta 2021 )
  15. (fi-Yhdysvallat) “  NGINX | Korkean suorituskyvyn kuormituksen tasaaja, verkkopalvelin ja käänteinen välityspalvelin  ” , NGINX: ssä (käytetty 28. syyskuuta 2018 )
  16. (en) "  huhtikuun 2019 verkkopalvelintutkimus  " , Netcraft ,22. huhtikuuta 2019
  17. "  Verkkopalvelimien käyttötilastot ja markkinaosuus, maaliskuu 2020  " , osoitteessa w3techs.com ( käyty 4. maaliskuuta 2020 )
  18. (in) "  Dynamic Module Loading Support (DSO)  " , tengine.taobao.org (käytetty 20. elokuuta 2014 )
  19. LinuxFr.org-arkkitehtuuri , voimassa helmikuusta 2011 lähtien
  20. (in) "  Web-palvelinohjelmisto ja haittaohjelma  " osoitteessa Googleonlinesecurity.blogspot.com ,5. kesäkuuta 2007
  21. (in) "  Joulukuu 2008 Web Server Survey  " päälle Netcraft
  22. (in) "  Maaliskuu 2009 Web Server Survey  " päälle Netcraft ,15. maaliskuuta 2009
  23. (in) "  Marraskuu 2010 -verkkosivustolla Server Survey  " päälle Netcraft ,5. marraskuuta 2010
  24. (in) "  heinäkuu 2011 Web Server Survey  " päälle Netcraft ,8. heinäkuuta 2011
  25. (in) "  Ylimmän tason venäläinen web-palvelin Nginx kerää 3 miljoonaa dollaria Venäjän ja kansainvälisistä varoista  " , East-West Digital News -sivustolla ,13. lokakuuta 2011(käytetty 29. syyskuuta 2019 )
  26. (in) "  tammikuu 2012 Web Server Survey  " päälle Netcraft ,3. kesäkuuta 2012
  27. (in) "  huhtikuu 2013 Web Server Survey  " päälle Netcraft ,2. huhtikuuta 2013
  28. (in) "  toukokuu 2015 Web Server Survey  " päälle Netcraft ,19. toukokuuta 2015
  29. (in) "  huhtikuu 2016 Web Server Survey  " päälle Netcraft ,21. huhtikuuta 2016
  30. (in) "  joulukuu 2018 Web Server Survey  " päälle Netcraft ,17. joulukuuta 2018

Katso myös

Ulkoiset linkit