Valentin V. Bartenev
[nginx-announce] unit-1.16.0
March 12, 2020 03:26PM
Hi,

I'm glad to announce a new release of NGINX Unit.

-------------------------------------------------------------------
To all Unit package maintainers: please don't miss the new '--tmp'
configure option. It specifies the directory where the Unit daemon
stores temporary files (i.e. large request bodies) at runtime.
-------------------------------------------------------------------

In this release, we continue improving the functionality related to
proxying and static media asset handling.

Now, the new 'upstreams' object enables creating server groups
for weighted round-robin load balancing:

{
"listeners": {
"*:80": {
"pass": "upstreams/rr-lb"
}
},

"upstreams": {
"rr-lb": {
"servers": {
"192.168.0.100:8080": { },
"192.168.0.101:8080": {
"weight": 2
}
}
}
}
}


See the docs for details:

- https://unit.nginx.org/configuration/#configuration-upstreams

So far, it's rather basic, but many more proxying and load-balancing
features are planned for future releases.

By its design, the new 'fallback' option is somewhat similar to the
'try_files' directive in nginx. It allows proceeding to another
action if a file isn't available:

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

"fallback": {
"pass": "applications/php"
}
}


In the example above, an attempt is made first to serve a request
with a file from the "/data/www/" directory. If there's no such
file, the request is passed to the "php" application.

Also, you can chain such fallback actions:

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

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

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


More info:

- https://unit.nginx.org/configuration/#configuration-fallback

Finally, configurations you upload can use line (//) and block (/* */)
comments. Now, Unit doesn't complain; instead, it strips them from the
JSON payload. This comes in handy if you store your configuration in a
file and edit it manually.


Changes with Unit 1.16.0 12 Mar 2020

*) Feature: basic load-balancing support with round-robin.

*) Feature: a "fallback" option that performs an alternative action if a
request can't be served from the "share" directory.

*) Feature: reduced memory consumption by dumping large request bodies
to disk.

*) Feature: stripping UTF-8 BOM and JavaScript-style comments from
uploaded JSON.

*) Bugfix: negative address matching in router might work improperly in
combination with non-negative patterns.

*) Bugfix: Java Spring applications failed to run; the bug had appeared
in 1.10.0.

*) Bugfix: PHP 7.4 was broken if it was built with thread safety
enabled.

*) Bugfix: compatibility issues with some Python applications.


To keep the finger on the pulse, see our further plans in the roadmap here:

- https://github.com/orgs/nginx/projects/1

Also, good news for macOS users! Now, there's a Homebrew tap for Unit:

- https://unit.nginx.org/installation/#homebrew

Stay healthy!

wbr, Valentin V. Bartenev

_______________________________________________
nginx-announce mailing list
nginx-announce@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-announce
Sorry, you do not have permission to post/reply in this forum.

Online Users

Guests: 169
Record Number of Users: 8 on April 13, 2023
Record Number of Guests: 421 on December 02, 2018
Powered by nginx      Powered by FreeBSD      PHP Powered      Powered by MariaDB      ipv6 ready