ekko: configurable read write and readheader timeouts

This commit is contained in:
2024-11-26 01:04:34 -08:00
parent 152be9d956
commit 68bd4d8904
2 changed files with 24 additions and 4 deletions

View File

@@ -20,7 +20,11 @@ import (
)
func New(name string, options ...func(*Ekko)) (*Ekko, error) {
ek := &Ekko{}
ek := &Ekko{
writeTimeout: 60 * time.Second,
readHeaderTimeout: 30 * time.Second,
}
for _, o := range options {
o(ek)
}
@@ -68,9 +72,8 @@ func (ek *Ekko) setup(ctx context.Context) (*echo.Echo, error) {
e := echo.New()
// todo: make these an option?
e.Server.ReadTimeout = 30 * time.Second
e.Server.WriteTimeout = 60 * time.Second
e.Server.ReadHeaderTimeout = ek.readHeaderTimeout
e.Server.WriteTimeout = ek.writeTimeout
e.Server.BaseContext = func(_ net.Listener) context.Context {
return ctx