valyala/fasthttp
use tcpKeepaliveListener and reuseport together
Geschlossen
#1.320 geöffnet am 14.06.2022
enhancementhelp wanted
Repository-Metriken
- Stars
- (21.741 Sterne)
- PR-Merge-Metriken
- (Durchschn. Merge 3T) (44 gemergte PRs in 30 T)
Beschreibung
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