Dive into key topics in network architecture implemented with the
Google-backed open source Go programming language. Networking topics
such as data serialization, application level protocols, character sets
and encodings are discussed and demonstrated in Go. This book has been
updated to the Go version 1.18 which includes modules, generics, and
fuzzing along with updated and additional examples.
Beyond the fundamentals, Network Programming with Go, Second Edition
covers key networking and security issues such as HTTP protocol changes,
validation and templates, remote procedure call (RPC) and REST
comparison, and more. Additionally, authors Ronald Petty and Jan
Newmarch guide you in building and connecting to a complete web server
based on Go. Along the way, use of a Go web toolkit (Gorilla) will be
employed.
This book can serve as both an essential learning guide and reference on
networking concepts and implementation in Go. Free source code is
available on Github for this book under Creative Commons open source
license.
What You Will Learn
-
Perform network programming with Go (including JSON and RPC)
-
Understand Gorilla, the Golang web toolkit, and how to use it
-
Implement a microservice architecture with Go
-
Leverage Go features such as generics, fuzzing
-
Master syscalls and how to employ them with Go
Who This Book Is For
Anyone interested in learning networking concepts implemented in modern
Go. Basic knowledge in Go is assumed, however, the content and examples
in this book are approachable with modest development experience in
other languages.