We have installed HAProxy 220.127.116.11 on our LB-cluster.
And we enabled alpn h2,http/1.1 with great success. Requests were going in as h2, all is well.
Only problem was, that in Chrome and FireFox, some requests also started to behave badly.
Now, I know ASP.NET WebForms is old and everything, but that system was started as that, and we’re slowly converting it to MVC and React.
Anyway… Sometimes, when we use “UpdatePanels” (ajax panels more or less), the requests stall, forever.
But as soon as we turn off h2, it all works perfectly again.
We’re running in http mode, since we are offloading SSL on HAProxy and have only http/1.1 backends (or else we would have to setup redundant certificates on all backend servers).
And we really don’t want to switch to tcp mode, since we want all the logs.
Has anyone else noticed that there’s trouble with ajax/postbacks (or any requests) while running in h2-mode?
HA-Proxy version 1.8.1-1 2017/12/03 Copyright 2000-2017 Willy Tarreau <email@example.com> Build options : TARGET = linux2628 CPU = generic CC = gcc CFLAGS = -g -O2 -fdebug-prefix-map=/build/haproxy-1.8.1=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 OPTIONS = USE_GETADDRINFO=1 USE_ZLIB=1 USE_REGPARM=1 USE_OPENSSL=1 USE_LUA=1 USE_SYSTEMD=1 USE_PCRE=1 USE_PCRE_JIT=1 USE_NS=1 Default settings : maxconn = 2000, bufsize = 16384, maxrewrite = 1024, maxpollevents = 200 Built with OpenSSL version : OpenSSL 1.1.0g 2 Nov 2017 Running on OpenSSL version : OpenSSL 1.1.0f 25 May 2017 OpenSSL library supports TLS extensions : yes OpenSSL library supports SNI : yes OpenSSL library supports : TLSv1.0 TLSv1.1 TLSv1.2 Built with Lua version : Lua 5.3.3 Built with transparent proxy support using: IP_TRANSPARENT IPV6_TRANSPARENT IP_FREEBIND Encrypted password support via crypt(3): yes Built with multi-threading support. Built with PCRE version : 8.39 2016-06-14 Running on PCRE version : 8.39 2016-06-14 PCRE library supports JIT : yes Built with zlib version : 1.2.8 Running on zlib version : 1.2.8 Compression algorithms supported : identity("identity"), deflate("deflate"), raw-deflate("deflate"), gzip("gzip") Built with network namespace support. Available polling systems : epoll : pref=300, test result OK poll : pref=200, test result OK select : pref=150, test result OK Total: 3 (3 usable), will use epoll. Available filters : [SPOE] spoe [COMP] compression [TRACE] trace