From eff467c8fcbefe4643770bf7259d7f935f61d82d Mon Sep 17 00:00:00 2001 From: Mickael KERJEAN Date: Wed, 20 Feb 2019 15:05:26 +1100 Subject: [PATCH] improvement (performance): optimise speed and mem usage on very hot path --- server/ctrl/files.go | 32 +++++++++++++++++++------------- 1 file changed, 19 insertions(+), 13 deletions(-) diff --git a/server/ctrl/files.go b/server/ctrl/files.go index c8d769ae..f87f2649 100644 --- a/server/ctrl/files.go +++ b/server/ctrl/files.go @@ -1,13 +1,14 @@ package ctrl import ( - "fmt" + "hash/fnv" . "github.com/mickael-kerjean/filestash/server/common" "github.com/mickael-kerjean/filestash/server/model" "io" "net/http" "path/filepath" "strings" + "strconv" "time" ) @@ -40,15 +41,20 @@ func FileLs(ctx App, res http.ResponseWriter, req *http.Request) { } files := make([]FileInfo, len(entries)) - etag := fmt.Sprintf("%d", len(entries)) + path + etagger := fnv.New32() + etagger.Write([]byte(path + strconv.Itoa(len(entries)))) for i:=0; i