优化IP库加载速度

This commit is contained in:
刘祥超
2024-01-23 10:04:01 +08:00
parent f0dc9e0577
commit 4a1c9be931

View File

@@ -9,6 +9,7 @@ import (
"github.com/TeaOSLab/EdgeCommon/pkg/configutils" "github.com/TeaOSLab/EdgeCommon/pkg/configutils"
"io" "io"
"net" "net"
"runtime"
"sort" "sort"
"strconv" "strconv"
"strings" "strings"
@@ -36,6 +37,13 @@ func NewReader(reader io.Reader) (*Reader, error) {
var libReader = &Reader{ var libReader = &Reader{
regionMap: map[string]*ipRegion{}, 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) err := libReader.load(reader)
if err != nil { if err != nil {
return nil, err return nil, err