valyala/fasthttp
use tcpKeepaliveListener and reuseport together
Fechada
#1.320 aberto em 14 de jun. de 2022
enhancementhelp wanted
Métricas do repositório
- Stars
- (21.741 estrelas)
- Métricas de merge de PR
- (Mesclagem média 3d) (44 fundiu PRs em 30d)
Description
I need the functionality of both tcpKeepaliveListener and reuseport. something like this:
func ListenAndServe() error {
s := &fasthttp.Server{
Handler: handler,
TCPKeepalive: true,
TCPKeepalivePeriod: 30 * time.Second,
}
ln, err := reuseport.Listen("tcp4", ":8080")
if err != nil {
return err
}
if tcpln, ok := ln.(*net.TCPListener); ok {
return s.Serve(tcpKeepaliveListener{
TCPListener: tcpln,
keepalive: s.TCPKeepalive,
keepalivePeriod: s.TCPKeepalivePeriod,
})
}
return s.Serve(ln)
}
is there a reason why tcpKeepaliveListener is private? is there another way to have both functionalities that I'm missing here? thanks a lot