Commit d56491ab authored by astaxie's avatar astaxie

sync beeApp.Server to graceful

parent 9fd7acf6
...@@ -78,15 +78,19 @@ func (app *App) Run() { ...@@ -78,15 +78,19 @@ func (app *App) Run() {
} }
} else { } else {
if Graceful { if Graceful {
app.Server.Addr = addr
app.Server.Handler = app.Handlers
app.Server.ReadTimeout = time.Duration(HttpServerTimeOut) * time.Second
app.Server.WriteTimeout = time.Duration(HttpServerTimeOut) * time.Second
if EnableHttpTLS { if EnableHttpTLS {
go func() { go func() {
time.Sleep(20 * time.Microsecond) time.Sleep(20 * time.Microsecond)
if HttpsPort != 0 { if HttpsPort != 0 {
addr = fmt.Sprintf("%s:%d", HttpAddr, HttpsPort) addr = fmt.Sprintf("%s:%d", HttpAddr, HttpsPort)
app.Server.Addr = addr
} }
server := grace.NewServer(addr, app.Handlers) server := grace.NewServer(addr, app.Handlers)
server.Server.ReadTimeout = time.Duration(HttpServerTimeOut) * time.Second server.Server = app.Server
server.Server.WriteTimeout = time.Duration(HttpServerTimeOut) * time.Second
err := server.ListenAndServeTLS(HttpCertFile, HttpKeyFile) err := server.ListenAndServeTLS(HttpCertFile, HttpKeyFile)
if err != nil { if err != nil {
BeeLogger.Critical("ListenAndServeTLS: ", err) BeeLogger.Critical("ListenAndServeTLS: ", err)
...@@ -98,8 +102,7 @@ func (app *App) Run() { ...@@ -98,8 +102,7 @@ func (app *App) Run() {
if EnableHttpListen { if EnableHttpListen {
go func() { go func() {
server := grace.NewServer(addr, app.Handlers) server := grace.NewServer(addr, app.Handlers)
server.Server.ReadTimeout = time.Duration(HttpServerTimeOut) * time.Second server.Server = app.Server
server.Server.WriteTimeout = time.Duration(HttpServerTimeOut) * time.Second
if ListenTCP4 && HttpAddr == "" { if ListenTCP4 && HttpAddr == "" {
server.Network = "tcp4" server.Network = "tcp4"
} }
......
...@@ -99,7 +99,7 @@ func init() { ...@@ -99,7 +99,7 @@ func init() {
} }
type graceServer struct { type graceServer struct {
http.Server *http.Server
GraceListener net.Listener GraceListener net.Listener
SignalHooks map[int]map[os.Signal][]func() SignalHooks map[int]map[os.Signal][]func()
tlsInnerListener *graceListener 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) {
state: STATE_INIT, state: STATE_INIT,
Network: "tcp", Network: "tcp",
} }
srv.Server = &http.Server{}
srv.Server.Addr = addr srv.Server.Addr = addr
srv.Server.ReadTimeout = DefaultReadTimeOut srv.Server.ReadTimeout = DefaultReadTimeOut
srv.Server.WriteTimeout = DefaultWriteTimeOut srv.Server.WriteTimeout = DefaultWriteTimeOut
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment