mirror of
https://github.com/TeaOSLab/EdgeNode.git
synced 2025-11-12 22:40:25 +08:00
优化代码
This commit is contained in:
@@ -28,6 +28,7 @@ type StatItem struct {
|
|||||||
}
|
}
|
||||||
|
|
||||||
var SharedHTTPRequestStatManager = NewHTTPRequestStatManager()
|
var SharedHTTPRequestStatManager = NewHTTPRequestStatManager()
|
||||||
|
var sharedUserAgentParser = NewUserAgentParser()
|
||||||
|
|
||||||
// HTTPRequestStatManager HTTP请求相关的统计
|
// HTTPRequestStatManager HTTP请求相关的统计
|
||||||
// 这里的统计是一个辅助统计,注意不要因为统计而影响服务工作性能
|
// 这里的统计是一个辅助统计,注意不要因为统计而影响服务工作性能
|
||||||
@@ -176,7 +177,6 @@ func (this *HTTPRequestStatManager) AddFirewallRuleGroupId(serverId int64, firew
|
|||||||
// Loop 单个循环
|
// Loop 单个循环
|
||||||
func (this *HTTPRequestStatManager) Loop() error {
|
func (this *HTTPRequestStatManager) Loop() error {
|
||||||
timeout := time.NewTimer(10 * time.Minute) // 执行的最大时间
|
timeout := time.NewTimer(10 * time.Minute) // 执行的最大时间
|
||||||
userAgentParser := NewUserAgentParser()
|
|
||||||
Loop:
|
Loop:
|
||||||
for {
|
for {
|
||||||
select {
|
select {
|
||||||
@@ -222,7 +222,7 @@ Loop:
|
|||||||
serverId := userAgentString[:atIndex]
|
serverId := userAgentString[:atIndex]
|
||||||
userAgent := userAgentString[atIndex+1:]
|
userAgent := userAgentString[atIndex+1:]
|
||||||
|
|
||||||
var result = userAgentParser.Parse(userAgent)
|
var result = sharedUserAgentParser.Parse(userAgent)
|
||||||
var osInfo = result.os
|
var osInfo = result.os
|
||||||
if len(osInfo.Name) > 0 {
|
if len(osInfo.Name) > 0 {
|
||||||
dotIndex := strings.Index(osInfo.Version, ".")
|
dotIndex := strings.Index(osInfo.Version, ".")
|
||||||
|
|||||||
@@ -12,8 +12,10 @@ import (
|
|||||||
|
|
||||||
func TestUserAgentParser_Parse(t *testing.T) {
|
func TestUserAgentParser_Parse(t *testing.T) {
|
||||||
var parser = NewUserAgentParser()
|
var parser = NewUserAgentParser()
|
||||||
t.Log(parser.Parse("Mozilla/5.0 (Windows NT 10.0; WOW64; rv:49.0) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/88.0.4324.96 Safari/537.36 Test/1"))
|
for i := 0; i < 4; i ++ {
|
||||||
t.Log(parser.Parse("Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/96.0.4664.110 Safari/537.36"))
|
t.Log(parser.Parse("Mozilla/5.0 (Windows NT 10.0; WOW64; rv:49.0) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/88.0.4324.96 Safari/537.36 Test/1"))
|
||||||
|
t.Log(parser.Parse("Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/96.0.4664.110 Safari/537.36"))
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
func TestUserAgentParser_Parse_Unknown(t *testing.T) {
|
func TestUserAgentParser_Parse_Unknown(t *testing.T) {
|
||||||
|
|||||||
Reference in New Issue
Block a user