/fosdem2018-godevroom-networkingdeepdive

FOSDEM 2018 Go devroom, Networking deepdive—From net.Dial to gRPC

Primary LanguageGoApache License 2.0Apache-2.0

Networking deepdive—From net.Dial to gRPC

Event: FOSDEM 2018 Go devroom.

Slide deck

Note: many of my code examples are based on Network Programming with Go by Jan Newmarch and you can also check out the commands I use.

Basics

We start off with a review of the stdlib net package and its sub-packages, walk through common use cases, patterns and challenges:

  • Discussion of net and sub-packages
  • Socket-level programming
  • Timeouts, retries
  • Security
  • DNS

Best practices

In the second part we focus on best practices using the stdlib and community-provided frameworks for networking:

  • Best practices writing networked applications
  • Review of non-stdlib packages useful for networking: golang.org/x/net/websocket, gorilla/websocket, gRPC