From 4ced7cacd0bb546a97d451ef884f3ee6cbfaa4e3 Mon Sep 17 00:00:00 2001 From: "Alex Ellis (OpenFaaS Ltd)" Date: Thu, 10 Dec 2020 13:23:56 +0000 Subject: [PATCH] Update scaling polling interval Polls every 100 ms instead of every 50ms for use with a new faas-netes PR: https://github.com/openfaas/faas-netes/pull/726 The call is much faster now, so this request should me made at a lower frequency. Also adds error handling for URL building in the external service query code. Signed-off-by: Alex Ellis (OpenFaaS Ltd) --- gateway/main.go | 2 +- gateway/plugin/external.go | 6 ++++-- 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/gateway/main.go b/gateway/main.go index 19477285..c290cc41 100644 --- a/gateway/main.go +++ b/gateway/main.go @@ -137,7 +137,7 @@ func main() { scalingConfig := scaling.ScalingConfig{ MaxPollCount: uint(1000), SetScaleRetries: uint(20), - FunctionPollInterval: time.Millisecond * 50, + FunctionPollInterval: time.Millisecond * 100, CacheExpiry: time.Second * 5, // freshness of replica values before going stale ServiceQuery: externalServiceQuery, } diff --git a/gateway/plugin/external.go b/gateway/plugin/external.go index c75e6bfc..3ab61f90 100644 --- a/gateway/plugin/external.go +++ b/gateway/plugin/external.go @@ -63,14 +63,16 @@ func (s ExternalServiceQuery) GetReplicas(serviceName, serviceNamespace string) urlPath := fmt.Sprintf("%ssystem/function/%s?namespace=%s", s.URL.String(), serviceName, serviceNamespace) - req, _ := http.NewRequest(http.MethodGet, urlPath, nil) + req, err := http.NewRequest(http.MethodGet, urlPath, nil) + if err != nil { + return emptyServiceQueryResponse, err + } if s.AuthInjector != nil { s.AuthInjector.Inject(req) } res, err := s.ProxyClient.Do(req) - if err != nil { log.Println(urlPath, err) } else {