From ec77a73b86998823d00485eee239fef91637e60a Mon Sep 17 00:00:00 2001 From: GoEdgeLab Date: Tue, 23 Jan 2024 10:04:01 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BC=98=E5=8C=96IP=E5=BA=93=E5=8A=A0=E8=BD=BD?= =?UTF-8?q?=E9=80=9F=E5=BA=A6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pkg/iplibrary/reader.go | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/pkg/iplibrary/reader.go b/pkg/iplibrary/reader.go index 05a2d88..bb2c91a 100644 --- a/pkg/iplibrary/reader.go +++ b/pkg/iplibrary/reader.go @@ -9,6 +9,7 @@ import ( "github.com/TeaOSLab/EdgeCommon/pkg/configutils" "io" "net" + "runtime" "sort" "strconv" "strings" @@ -36,6 +37,13 @@ func NewReader(reader io.Reader) (*Reader, error) { var libReader = &Reader{ regionMap: map[string]*ipRegion{}, } + + if runtime.NumCPU() >= 4 /** CPU数量较多的通常有着大内存 **/ { + libReader.ipV4Items = make([]ipv4Item, 0, 6_000_000) + } else { + libReader.ipV4Items = make([]ipv4Item, 0, 600_000) + } + err := libReader.load(reader) if err != nil { return nil, err