1. Fix of the repeated-tries of non-idempotent requests bug.
2. Dynamic modules.
3. HTTP/2!!
4. reuseport in listen.
5. SSLv3 disabled by default.
6. UDP Load Balancing.
1. Fix of the repeated-tries of non-idempotent requests bug.
2. Dynamic modules.
3. HTTP/2!!
4. reuseport in listen.
5. SSLv3 disabled by default.
6. UDP Load Balancing.
Isn't that just a feature creep?
Doesn't look like anything that would be useful in a web server and load balancing of UDP is different than TCP. Layer 3 load balancing (e.g. LVS) would probably be more suitable.
Nginx's sees a massive share of its usage as a web server, sure, but – from the very beginning – it was always intended to be a good reverse-proxy.
Apart from http, nginx also supports mail (imap, pop3, smtp), stream sockets (tcp and unix), and few third-party ones too (like rtmp). And now, UDP as well.
One of most needed features expected of a good reverse-proxy is load-balancing. Nginx is already quite good at it, but lacked UDP load balancing (like HAproxy – another reverse-proxy – does). That is no longer the case, and I'm sure the people that have asked HAproxy to support UDP will be pleased that nginx does it now.
2. This test is unfair, it relies on default settings, where nginx has defaults to retry immediately and never give up. HAProxy by default has this option (option redispatch) disabled because it offers larger range of load balancing algorithms and in some cases this setting might not make sense. The point is that you can configure it to behave the same way.
3. In terms of in-flight health checks HAProxy has actual ones (in addition to the above redispatch mechanism) with observe option[1] and on-error[2] it can be programmed to for example simulate healthcheck down when application generates too many 5xx errors.
[1] http://cbonte.github.io/haproxy-dconv/configuration-1.6.html...
[2] http://cbonte.github.io/haproxy-dconv/configuration-1.6.html...
www.slideshare.net/bryan_call/choosing-a-proxy-server-apachecon-2014
www.slideshare.net/AllThingsOpen/battle-of-the-stacks
It feels a bit biased.