From 29c674fdfffc9fba867d6aebfa647233e1fff8f7 Mon Sep 17 00:00:00 2001
From: zhangzengfei <zhangzengfei@smartai.com>
Date: 星期二, 16 七月 2024 20:15:55 +0800
Subject: [PATCH] 禁用服务端的keepalive
---
config/config.go | 18 ++++++++++--------
main.go | 24 +++++++++++++-----------
2 files changed, 23 insertions(+), 19 deletions(-)
diff --git a/config/config.go b/config/config.go
index 880e41e..aa34146 100644
--- a/config/config.go
+++ b/config/config.go
@@ -9,14 +9,15 @@
)
type serve struct {
- ID string `mapstructure:"id"`
- Mode string `mapstructure:"mode"`
- Host string `mapstructure:"host"`
- Port string `mapstructure:"port"`
- Realm string `mapstructure:"realm"`
- Username string `mapstructure:"username"`
- Password string `mapstructure:"password"`
- Role string `mapstructure:"role"` // agent 璁惧绔�, proxy 1400涓浆 涓嶅鐞哾eivce, server 鍏ㄥ姛鑳�
+ ID string `mapstructure:"id"`
+ Mode string `mapstructure:"mode"`
+ Host string `mapstructure:"host"`
+ Port string `mapstructure:"port"`
+ Realm string `mapstructure:"realm"`
+ Username string `mapstructure:"username"`
+ Password string `mapstructure:"password"`
+ Role string `mapstructure:"role"` // agent 璁惧绔�, proxy 1400涓浆 涓嶅鐞哾eivce, server 鍏ㄥ姛鑳�
+ Keepalive bool `mapstructure:"keepalive"`
}
type client struct {
@@ -48,6 +49,7 @@
ReportInterval int `mapstructure:"report-interval"`
RetryInterval int `mapstructure:"retry-interval"`
Enable bool `mapstructure:"enable"`
+ FTPServer string `mapstructure:"ftp-server"`
}
type image struct {
diff --git a/main.go b/main.go
index 8130d67..5d71a57 100644
--- a/main.go
+++ b/main.go
@@ -37,6 +37,18 @@
Handler: r,
}
+ srv.SetKeepAlivesEnabled(config.ServeConf.Keepalive)
+
+ // Initializing the server in a goroutine so that
+ // it won't block the graceful shutdown handling below
+ go func() {
+ if err := srv.ListenAndServe(); err != nil && err != http.ErrServerClosed {
+ logger.Error("listen: %s", err)
+ }
+ }()
+
+ logger.Info("Server is running at %s:%s", host, port)
+
// 鍚姩1400瀹㈡埛绔�
ctx, cancel := context.WithCancel(context.Background())
go client.Init1400Client(ctx)
@@ -48,16 +60,6 @@
// 鍚姩瀹氭椂浠诲姟
cron.Init()
-
- // Initializing the server in a goroutine so that
- // it won't block the graceful shutdown handling below
- go func() {
- if err := srv.ListenAndServe(); err != nil && err != http.ErrServerClosed {
- logger.Error("listen: %s", err)
- }
- }()
-
- logger.Info("Server is running at %s:%s", host, port)
// Wait for interrupt signal to gracefully shutdown the server with
// a timeout of 5 seconds.
@@ -72,7 +74,7 @@
// The context is used to inform the server it has 5 seconds to finish
// the request it is currently handling
//ctx, cancel := context.WithTimeout(context.Background(), 5*time.Second)
- defer cancel()
+ cancel()
if err := srv.Shutdown(ctx); err != nil {
logger.Error("Server forced to shutdown:", err)
}
--
Gitblit v1.8.0