I have a setup where the frontend is configured with keepalive and backend configured with http-reuse always. This allows having a lot of client connections to haproxy with only a few connections to apache backend.
It was working perfectly with very low apache processes until I enabled http/2 !
I have the feeling that haproxy no longer reuse http connections the way it did without http/2 and uses a lot more connections to apache.
Here is apache connection graph : https://pasteboard.co/HqwG6nA.png
backend bk option http-keep-alive option persist http-reuse always server web1 x.x.x.x:8000 frontend front bind x.x.x.x:443 ssl crt all/ alpn h2,http/1.1 option http-keep-alive default_backend bk