NGINX Unit 1.16.0 Application Server Release

πήρε θέση έκδοση διακομιστή εφαρμογών NGINX Unit 1.16, στο πλαίσιο της οποίας αναπτύσσεται μια λύση για τη διασφάλιση της κυκλοφορίας διαδικτυακών εφαρμογών σε διάφορες γλώσσες προγραμματισμού (Python, PHP, Perl, Ruby, Go, JavaScript/Node.js και Java). Η μονάδα NGINX μπορεί να εκτελεί ταυτόχρονα πολλές εφαρμογές σε διαφορετικές γλώσσες προγραμματισμού, οι παράμετροι εκκίνησης των οποίων μπορούν να αλλάξουν δυναμικά χωρίς να χρειάζεται να επεξεργαστείτε τα αρχεία διαμόρφωσης και να κάνετε επανεκκίνηση. Ο κώδικας είναι γραμμένος σε C και διανέμονται από άδεια σύμφωνα με το Apache 2.0. Μπορείτε να εξοικειωθείτε με τις δυνατότητες της μονάδας NGINX στο ανακοίνωση πρώτο θέμα.

Στη νέα έκδοση:

  • Προστέθηκε υποστήριξη για εξισορρόπηση φορτίου σε λειτουργία round-robin. Για παράδειγμα, για να διανείμετε το φορτίο σε δύο διακομιστές 192.168.0.100 και 192.168.0.101 και να στείλετε διπλάσια αιτήματα στον δεύτερο διακομιστή, μπορείτε να χρησιμοποιήσετε την ακόλουθη κατασκευή:

    "upstreams": {
    "rr-lb": {
    "διακομιστές": {
    "192.168.0.100:8080": { },
    "192.168.0.101:8080": { "weight": 2 }
    }
    }
    }

  • Εφαρμόστηκε τη δυνατότητα να ορίσετε ευέλικτους κανόνες για αιτήματα δρομολόγησης παρόμοιους με τη λειτουργικότητα "try_files"στο nginx. Μια πρόσθετη διαδρομή καθορίζεται χρησιμοποιώντας την οδηγία "εφεδρική", η οποία ενεργοποιείται εάν το ζητούμενο αρχείο δεν βρεθεί στη διαδρομή που ορίζεται μέσω της οδηγίας "κοινή χρήση". Για παράδειγμα, για να καλέσετε έναν χειριστή PHP εάν δεν υπάρχει αρχείο στον κατάλογο /data/www/, μπορείτε να καθορίσετε:

    {
    "share": "/data/www/",
    "υποχώρηση": {
    "pass": "applications/php"
    }
    }

    Επιτρέπεται η χρήση ένθετων «εναλλακτικών» μπλοκ. Για παράδειγμα, εάν το αρχείο δεν βρίσκεται στο /data/www/, μπορείτε να προσπαθήσετε να το ανακτήσετε από το /data/cache/ και αν δεν υπάρχει ούτε εκεί, ανακατευθύνετε το αίτημα σε άλλο backend:

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

    "υποχώρηση": {
    "κοινή χρήση": "/data/cache/",

    "υποχώρηση": {
    "proxy": "http://127.0.0.1:9000"
    }
    }
    }

  • Οι παράμετροι διαμόρφωσης που έχουν φορτωθεί σε μορφή JSON παρέχουν αφαίρεση σχολίων τύπου JavaScript (“//…” και “/* … */”) και καθαρισμό των δεικτών ακολουθίας byte (UTF-8 BOM), το οποίο μπορεί να είναι χρήσιμο σε περίπτωση μη αυτόματης επεξεργασίας παραμέτρων σε JSON.
  • Μειώθηκε η κατανάλωση μνήμης με την έκπλυση του σώματος των πολύ μεγάλων αιτημάτων στο δίσκο.

Πηγή: opennet.ru

Προσθέστε ένα σχόλιο