Step-by-step instruction on writing your first production-ready servers with Golang

Google's Go language, otherwise known as Golang, is a fast, simple, and reliable language that is rapidly becoming a highly popular choice for developers of all kinds. With particular utility in cloud-native environments, Golang is being adopted in major projects like Docker and Ethereum thanks to its user-friendly features, like concurrency and easy deployment.

In Practical Golang: Building Scalable Network and Non-Network Applications, expert coder and devops engineer Amit Saha delivers a step-by-step guide to writing production-ready HTTP 1.1, HTTP2, RPC, and TCP/UDP servers. Walking you through the entire process of learning this already straightforward language, from your first application to your first deployed server, the authors rely solely on the most popular open-source projects to ensure you can apply the book's advice in any cloud environment.

In this book, you'll get:

  • Fulsome descriptions of best practices on load balancing, scaling, and failure handling
  • Stepwise guidance on writing an HTTP service from scratch using only Golang's standard library
  • Easy tutorials on implementing RPC and HTTP interfaces for RPC services
  • Straightforward instructions on using SQL databases

Perfect for software developers, devops engineers, and other programming professionals, Practical Golang is also an indispensable resource for anyone who wants to go beyond the basics of Golang and deploy robust and practical servers.

Table of Contents

  1. Cover
  2. Title Page
  3. Introduction
  4. Getting Started
  5. CHAPTER 1: Writing Command-Line Applications
  6. CHAPTER 2: Advanced Command-Line Applications
  7. CHAPTER 3: Writing HTTP Clients
  8. CHAPTER 4: Advanced HTTP Clients
  9. CHAPTER 5: Building HTTP Servers
  10. CHAPTER 6: Advanced HTTP Server Applications
  11. CHAPTER 7: Production-Ready HTTP Servers
  12. CHAPTER 8: Building RPC Applications with gRPC
  13. CHAPTER 9: Advanced gRPC Applications
  14. CHAPTER 10: Production-Ready gRPC Applications
  15. CHAPTER 11: Working with Data Stores
  16. APPENDIX A: Making Your Applications Observable
  17. APPENDIX B: Deploying Applications
  18. Index
  19. Copyright
  20. Dedication
  21. About the Author
  22. About the Technical Editor
  23. Acknowledgments
  24. End User License Agreement