Join the community today
Register Now

Nginx [nginx-announce] unit-1.8.0

Discussion in 'Nginx and PHP-FPM news & discussions' started by eva2000, Mar 2, 2019.

  1. eva2000

    eva2000 Administrator Staff Member

    58,893
    12,490
    113
    May 24, 2014
    Brisbane, Australia
    Ratings:
    +19,122
    Local Time:
    9:57 AM
    Nginx 1.31.x
    MariaDB 10.x/11.4+/12.3+
    Hi,

    I'm glad to announce a new release of NGINX Unit. This release contains two
    big features that we have been working on diligently during the last months.

    Some of you wonder why listener sockets are separated from applications in
    Unit configuration API. That was done intentionally to introduce advanced
    routing between sockets and applications in the future, and this future is
    finally happening.

    Now you will be able to specify quite handy rules that will direct your
    requests to a particular application depending on various parameters.

    Please take a glance at the routing documentation:

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

    Currently, it only supports internal routing by Host, URI, and method request
    parameters. In the following releases, available options are going to be
    expanded to allow matching arbitrary headers, arguments, cookies, source
    and destination addresses. We will also add regular expression patterns.

    In future releases, these routing abilities will be handy for issuing redirects
    and changing configuration on a per route basis.

    As usual with Unit, all routing changes are fully dynamic and gracefully done
    through its control API.

    The second feature is even bigger. We've merged the code that Maxim Romanov
    developed in a separate branch last year to support running applications
    leveraging certain technology described in the Java(tm) Servlet 3.1 (JSR-340)
    specification. This module is a BETA release as the module is untested and
    presumed incompatible with the JSR-340 specification.

    Now everybody can easily install it from our packages, try it with their Java
    applications, and leave us feedback. If you're a Jira user, please use this
    HowTo:

    - https://unit.nginx.org/howto/jira/

    More documentation is available in Installation and Configuration sections:

    - https://unit.nginx.org/installation/
    - https://unit.nginx.org/configuration/#java-application

    We intend to use our open-development process to refine and improve the
    software and to eventually test and certify the software's compatibility
    with the JSR-340 specification. Unless and until the software has been
    tested and certified, you should not deploy the software in support of
    deploying or providing Java Servlet 3.1 applications. You should instead
    deploy production applications on pre-built binaries that have been tested
    and certified to meet the JSR-340 compatibility requirements such as
    certified binaries published for the JSR-340 reference implementation
    available at https://javaee.github.io/glassfish/.

    * Java is a registered trademark of Oracle and/or its affiliates.


    Changes with Unit 1.8.0 01 Mar 2019

    *) Change: now three numbers are always used for versioning: major,
    minor, and patch versions.

    *) Change: now QUERY_STRING is always defined even if the request does
    not include the query component.

    *) Feature: basic internal request routing by Host, URI, and method.

    *) Feature: experimental support for Java Servlet Containers.

    *) Bugfix: segmentation fault might have occurred in the router process.

    *) Bugfix: various potential memory leaks.

    *) Bugfix: TLS connections might have stalled.

    *) Bugfix: some Perl applications might have failed to send the response
    body.

    *) Bugfix: some compilers with specific flags might have produced
    non-functioning builds; the bug had appeared in 1.5.

    *) Bugfix: Node.js package had wrong version number when installed from
    sources.


    Our versioning scheme is actually always supposed to have the third version
    number, but the ".0" patch version was hidden. In order to avoid any possible
    confusion, it was decided to always show ".0" in version numbers.

    For those who are interested in running Unit on CentOS, Fedora, and RHEL
    with latest versions of PHP, the corresponding packages are now available
    in Remi's RPM repository:

    - https://unit.nginx.org/installation/#remi-s-rpm-repo

    Many kudos to Remi Collet for collaboration.

    Note also that our technical writer Artem Konev has recently added more HowTos
    to the site about configuring various applications, including WordPress, Flask,
    and Django-based ones:

    - https://unit.nginx.org/howto/

    He will continue discovering and writing instructions for other applications.
    If you're interested in some specific use cases and applications, please don't
    hesitate to leave a feature request on the documentation GitHub:

    - https://github.com/nginx/unit-docs/issues


    In the following releases, we will continue improving routing capabilities
    and support for Java applications. Among other big features we're working
    on are WebSockets support and serving static media assets.

    Stay tuned, give feedback, and help us to create the best software ever.

    wbr, Valentin V. Bartenev

    _______________________________________________
    nginx-announce mailing list
    nginx-announce@nginx.org
    http://mailman.nginx.org/mailman/listinfo/nginx-announce

    Continue reading...