вс, 29 мая 2022 г. в 23:40, Shawn Heisey <hapr...@elyograg.org>:
> On 4/29/2022 10:10 AM, Shawn Heisey wrote: > > I did a build and install this morning, a bunch of quic-related > > changes in that. Now everything seems to be working on my paste > > site. Large pastes work, and I can reload the page a ton of times > > without it hanging until browser restart. > > I have found that the roundcube package doesn't work completely right > with quic/http3. It has proven to be an excellent way of revealing > problems. The roundcube package is a php webmail app that utilizes a > database and an imap server. It's using many of the features that are > possible with modern browsers. > roundcube runs automatic browser tests https://github.com/roundcube/roundcubemail/runs/6642129873?check_suite_focus=true I think we can try to run those tests with haproxy between browser and roundcube > > When I first started this http3 journey, I couldn't even log in to > roundcube because any POST request was failing ... but that problem got > fixed. Now I find that when quickly jumping between folders in my big > mailbox, the site stops responding. If I switch back to http/2, > everything works. If it would help, I can give one of the devs full > access to use my roundcube install and experiment with the config, see > if maybe I am doing something wrong. > > Here's my haproxy -vv output. I built it from the master branch right > after I saw the dev12 release announcement: > > HAProxy version 2.6-dev12 2022/05/27 - https://haproxy.org/ > Status: development branch - not safe for use in production. > Known bugs: https://github.com/haproxy/haproxy/issues?q=is:issue+is:open > Running on: Linux 5.13.0-1023-aws #25~20.04.1-Ubuntu SMP Mon Apr 25 > 19:28:27 UTC 2022 x86_64 > Build options : > TARGET = linux-glibc > CPU = native > CC = cc > CFLAGS = -O2 -march=native -g -Wall -Wextra -Wundef > -Wdeclaration-after-statement -Wfatal-errors -Wtype-limits > -Wshift-negative-value -Wshift-overflow=2 -Wduplicated-cond > -Wnull-dereference -fwrapv -Wno-address-of-packed-member > -Wno-unused-label -Wno-sign-compare -Wno-unused-parameter -Wno-clobbered > -Wno-missing-field-initializers -Wno-cast-function-type > -Wno-string-plus-int -Wno-atomic-alignment > OPTIONS = USE_PCRE2_JIT=1 USE_OPENSSL=1 USE_ZLIB=1 USE_SYSTEMD=1 > USE_QUIC=1 > DEBUG = -DDEBUG_H3 -DDEBUG_QPACK > > Feature list : +EPOLL -KQUEUE +NETFILTER -PCRE -PCRE_JIT -PCRE2 > +PCRE2_JIT +POLL +THREAD +BACKTRACE -STATIC_PCRE -STATIC_PCRE2 +TPROXY > +LINUX_TPROXY +LINUX_SPLICE +LIBCRYPT +CRYPT_H -ENGINE +GETADDRINFO > +OPENSSL -LUA +ACCEPT4 -CLOSEFROM +ZLIB -SLZ +CPU_AFFINITY +TFO +NS +DL > +RT -DEVICEATLAS -51DEGREES -WURFL +SYSTEMD -OBSOLETE_LINKER +PRCTL > -PROCCTL +THREAD_DUMP -EVPORTS -OT +QUIC -PROMEX -MEMORY_PROFILING > > Default settings : > bufsize = 16384, maxrewrite = 1024, maxpollevents = 200 > > Built with multi-threading support (MAX_THREADS=64, default=2). > Built with OpenSSL version : OpenSSL 3.0.3+quic 3 May 2022 > Running on OpenSSL version : OpenSSL 3.0.3+quic 3 May 2022 > OpenSSL library supports TLS extensions : yes > OpenSSL library supports SNI : yes > OpenSSL library supports : TLSv1.0 TLSv1.1 TLSv1.2 TLSv1.3 > OpenSSL providers loaded : default > Built with network namespace support. > Built with zlib version : 1.2.11 > Running on zlib version : 1.2.11 > Compression algorithms supported : identity("identity"), > deflate("deflate"), raw-deflate("deflate"), gzip("gzip") > Support for malloc_trim() is enabled. > Built with transparent proxy support using: IP_TRANSPARENT > IPV6_TRANSPARENT IP_FREEBIND > Built with PCRE2 version : 10.34 2019-11-21 > PCRE2 library supports JIT : yes > Encrypted password support via crypt(3): yes > Built with gcc compiler version 9.4.0 > > 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 multiplexer protocols : > (protocols marked as <default> cannot be specified using 'proto' keyword) > quic : mode=HTTP side=FE mux=QUIC flags=HTX|NO_UPG|FRAMED > h2 : mode=HTTP side=FE|BE mux=H2 flags=HTX|HOL_RISK|NO_UPG > fcgi : mode=HTTP side=BE mux=FCGI flags=HTX|HOL_RISK|NO_UPG > <default> : mode=HTTP side=FE|BE mux=H1 flags=HTX > h1 : mode=HTTP side=FE|BE mux=H1 flags=HTX|NO_UPG > <default> : mode=TCP side=FE|BE mux=PASS flags= > none : mode=TCP side=FE|BE mux=PASS flags=NO_UPG > > Available services : none > > Available filters : > [CACHE] cache > [COMP] compression > [FCGI] fcgi-app > [SPOE] spoe > [TRACE] trace > > >