NGINX Unit 1.16.0 Applicatieserverversie

vond plaats release van de applicatieserver NGINX-eenheid 1.16, waarbinnen een oplossing wordt ontwikkeld om de lancering van webapplicaties in verschillende programmeertalen (Python, PHP, Perl, Ruby, Go, JavaScript/Node.js en Java) te garanderen. NGINX Unit kan tegelijkertijd meerdere applicaties in verschillende programmeertalen uitvoeren, waarvan de startparameters dynamisch kunnen worden gewijzigd zonder de noodzaak om configuratiebestanden te bewerken en opnieuw op te starten. De code is geschreven in C en gedistribueerd door gelicentieerd onder Apache 2.0. U kunt kennismaken met de functionaliteiten van NGINX Unit in Aankondiging eerste probleem.

In de nieuwe versie:

  • Toegevoegd ondersteuning voor taakverdeling in round-robin-modus. Om bijvoorbeeld de belasting over twee servers 192.168.0.100 en 192.168.0.101 te verdelen en twee keer zoveel verzoeken naar de tweede server te sturen, kunt u de volgende constructie gebruiken:

    "stroomopwaarts": {
    "rr-lb": {
    "servers": {
    "192.168.0.100:8080": { },
    "192.168.0.101:8080": { "gewicht": 2 }
    }
    }
    }

  • Geïmplementeerd de mogelijkheid om flexibele regels in te stellen voor het routeren van verzoeken, vergelijkbaar met de functionaliteit "probeer_bestanden" in nginx. Er wordt een extra route gespecificeerd met behulp van de "fallback"-richtlijn, die wordt geactiveerd als het opgevraagde bestand niet wordt gevonden in het pad dat is gedefinieerd via de "share"-richtlijn. Als u bijvoorbeeld een PHP-handler wilt aanroepen als er geen bestand in de map /data/www/ staat, kunt u het volgende opgeven:

    {
    "share": "/data/www/",
    "terugvallen": {
    "pass": "applicaties/php"
    }
    }

    Het gebruik van geneste “fallback”-blokken is toegestaan. Als het bestand bijvoorbeeld niet in /data/www/ staat, kunt u proberen het op te halen uit /data/cache/, en als het daar ook niet staat, kunt u het verzoek omleiden naar een andere backend:

    {
    "share": "/data/www/",

    "terugvallen": {
    "share": "/data/cache/",

    "terugvallen": {
    "proxy": "http://127.0.0.1:9000"
    }
    }
    }

  • Configuratieparameters geladen in JSON-formaat zorgen voor het verwijderen van commentaar in JavaScript-stijl ("//..." en "/* ... */") en het opschonen van bytereeksmarkeringen (UTF-8 stuklijst), wat handig kan zijn bij het handmatig bewerken van parameters in JSON.
  • Verminderd geheugengebruik door de hoofdtekst van zeer grote verzoeken naar schijf te spoelen.

Bron: opennet.ru

Voeg een reactie