Book description
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.
Table of contents
- Cover
- Front Matter
- 1. Architectural Layers
- 2. Overview of the Go Language
- 3. Socket-Level Programming
- 4. Data Serialization
- 5. Application-Level Protocols
- 6. Managing Character Sets and Encodings
- 7. Security
- 8. HTTP
- 9. Templates
- 10. A Complete Web Server
- 11. HTML
- 12. XML
- 13. Remote Procedure Call
- 14. REST
- 15. WebSockets
- 16. Gorilla
- 17. Testing
- Back Matter
Product information
- Title: Network Programming with Go Language: Essential Skills for Programming, Using and Securing Networks with Open Source Google Golang
- Author(s):
- Release date: June 2022
- Publisher(s): Apress
- ISBN: 9781484280959
You might also like
book
Network Programming with Go
Go combines the best parts of many other programming languages. It’s fast, scalable, and designed for …
book
Software Development with Go: Cloud-Native Programming using Golang with Linux and Docker
Gain insights into the different challenges that can be solved using Go, with a focus on …
book
Linux Kernel Debugging
Effectively debug kernel modules, device drivers, and the kernel itself by gaining a solid understanding of …
book
Hands-On System Programming with Go
Explore the fundamentals of systems programming starting from kernel API and filesystem to network programming and …