Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Production Ready Go - Golang UK 2017

Ian Kent
August 18, 2017

Production Ready Go - Golang UK 2017

Ian Kent

August 18, 2017
Tweet

More Decks by Ian Kent

Other Decks in Programming

Transcript

  1. Some Go things
 (that I won’t be talking about) •

    fmt • vet • lint • test • -race • pprof • vendor • cover
  2. Some not-Go things
 (that I also won’t be talking about)

    • logging • tracing • errors • retries
  3. A brief overview of OS signals KILL Handled by OS,

    kills the process STOP, CONT Handled by OS, pauses/resumes the process QUIT Sent by Ctrl + \, core dumps INFO Sent by Ctrl + T, process info PIPE Failed write to file descriptor INT Sent by Ctrl + C TERM Sent by kill <pid>
  4. Recap • Client timeouts • Server timeouts • OS signals

    • Cancellation https://bit.ly/production-ready-go
  5. Never start a goroutine without knowing how it will stop

    - Dave Cheney https://bit.ly/dave-cheney-goroutine
  6. Further reading • CloudFlare - So you want to expose

    Go on the internet
 https://bit.ly/cloudflare-expose-go
 • CloudImmunity - 50 shades of Go
 https://bit.ly/cloudimmunity-50-shades-of-go
 • spf13 - 7 common mistakes in Go
 https://bit.ly/spf13-common-mistakes-in-go