Skip to content

A best practice http server set up that supports graceful shutdown

License

Notifications You must be signed in to change notification settings

traum-ferienwohnungen/graceful

 
 

Repository files navigation

graceful

Build Status Coverage Status Docs: GoDoc

Join the chat at https://discord.gg/PAMQWkr

Best practice http server configurations and helpers for Go 1.8's http graceful shutdown feature. Currently supports best practice configurations by:

Usage

To install this library, do:

go get github.com/ory/graceful

Running Cloudflare Config with Graceful Shutdown

package main

import (
    "net/http"
    "log"

    "github.com/ory/graceful"
)

func main() {
    server := graceful.WithDefaults(&http.Server{
        Addr: ":54932",
        // Handler: someHandler,
    })

    log.Println("main: Starting the server")
    if err := graceful.Graceful(server.ListenAndServe, server.Shutdown); err != nil {
        log.Fatalln("main: Failed to gracefully shutdown")
    }
    log.Println("main: Server was shutdown gracefully")
}

About

A best practice http server set up that supports graceful shutdown

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Go 98.5%
  • Shell 1.5%