sync beeApp.Server to graceful
Showing
2 changed files
with
9 additions
and
6 deletions
| ... | @@ -78,15 +78,19 @@ func (app *App) Run() { | ... | @@ -78,15 +78,19 @@ func (app *App) Run() { |
| 78 | } | 78 | } |
| 79 | } else { | 79 | } else { |
| 80 | if Graceful { | 80 | if Graceful { |
| 81 | app.Server.Addr = addr | ||
| 82 | app.Server.Handler = app.Handlers | ||
| 83 | app.Server.ReadTimeout = time.Duration(HttpServerTimeOut) * time.Second | ||
| 84 | app.Server.WriteTimeout = time.Duration(HttpServerTimeOut) * time.Second | ||
| 81 | if EnableHttpTLS { | 85 | if EnableHttpTLS { |
| 82 | go func() { | 86 | go func() { |
| 83 | time.Sleep(20 * time.Microsecond) | 87 | time.Sleep(20 * time.Microsecond) |
| 84 | if HttpsPort != 0 { | 88 | if HttpsPort != 0 { |
| 85 | addr = fmt.Sprintf("%s:%d", HttpAddr, HttpsPort) | 89 | addr = fmt.Sprintf("%s:%d", HttpAddr, HttpsPort) |
| 90 | app.Server.Addr = addr | ||
| 86 | } | 91 | } |
| 87 | server := grace.NewServer(addr, app.Handlers) | 92 | server := grace.NewServer(addr, app.Handlers) |
| 88 | server.Server.ReadTimeout = time.Duration(HttpServerTimeOut) * time.Second | 93 | server.Server = app.Server |
| 89 | server.Server.WriteTimeout = time.Duration(HttpServerTimeOut) * time.Second | ||
| 90 | err := server.ListenAndServeTLS(HttpCertFile, HttpKeyFile) | 94 | err := server.ListenAndServeTLS(HttpCertFile, HttpKeyFile) |
| 91 | if err != nil { | 95 | if err != nil { |
| 92 | BeeLogger.Critical("ListenAndServeTLS: ", err) | 96 | BeeLogger.Critical("ListenAndServeTLS: ", err) |
| ... | @@ -98,8 +102,7 @@ func (app *App) Run() { | ... | @@ -98,8 +102,7 @@ func (app *App) Run() { |
| 98 | if EnableHttpListen { | 102 | if EnableHttpListen { |
| 99 | go func() { | 103 | go func() { |
| 100 | server := grace.NewServer(addr, app.Handlers) | 104 | server := grace.NewServer(addr, app.Handlers) |
| 101 | server.Server.ReadTimeout = time.Duration(HttpServerTimeOut) * time.Second | 105 | server.Server = app.Server |
| 102 | server.Server.WriteTimeout = time.Duration(HttpServerTimeOut) * time.Second | ||
| 103 | if ListenTCP4 && HttpAddr == "" { | 106 | if ListenTCP4 && HttpAddr == "" { |
| 104 | server.Network = "tcp4" | 107 | server.Network = "tcp4" |
| 105 | } | 108 | } | ... | ... |
| ... | @@ -99,7 +99,7 @@ func init() { | ... | @@ -99,7 +99,7 @@ func init() { |
| 99 | } | 99 | } |
| 100 | 100 | ||
| 101 | type graceServer struct { | 101 | type graceServer struct { |
| 102 | http.Server | 102 | *http.Server |
| 103 | GraceListener net.Listener | 103 | GraceListener net.Listener |
| 104 | SignalHooks map[int]map[os.Signal][]func() | 104 | SignalHooks map[int]map[os.Signal][]func() |
| 105 | tlsInnerListener *graceListener | 105 | tlsInnerListener *graceListener |
| ... | @@ -151,7 +151,7 @@ func NewServer(addr string, handler http.Handler) (srv *graceServer) { | ... | @@ -151,7 +151,7 @@ func NewServer(addr string, handler http.Handler) (srv *graceServer) { |
| 151 | state: STATE_INIT, | 151 | state: STATE_INIT, |
| 152 | Network: "tcp", | 152 | Network: "tcp", |
| 153 | } | 153 | } |
| 154 | 154 | srv.Server = &http.Server{} | |
| 155 | srv.Server.Addr = addr | 155 | srv.Server.Addr = addr |
| 156 | srv.Server.ReadTimeout = DefaultReadTimeOut | 156 | srv.Server.ReadTimeout = DefaultReadTimeOut |
| 157 | srv.Server.WriteTimeout = DefaultWriteTimeOut | 157 | srv.Server.WriteTimeout = DefaultWriteTimeOut | ... | ... |
-
Please register or sign in to post a comment