SitePoint
  • Premium
  • Library
  • Community
  • Jobs
  • Blog
LoginStart Free Trial
Practical Go: Building Scalable Network and Non-Network Applications
Practical Go
Building Scalable Network and Non-Network Applications
Introduction
What Does This Book Cover?
Reader Support for This Book
Getting Started
Installing Go
Choosing an Editor
Installing Protocol Buffer Toolchain
Installing Docker Desktop
Guide to the Book
Go Refresher
Summary

1

Writing Command-Line Applications

Your First Application
Writing Unit Tests
Using the Flag Package
Improving the User Interface
Updating the Unit Tests
Summary
Implementing Sub-commands
Making Your Applications Robust
Summary
Downloading Data
Deserializing Received Data
Sending Data
Working with Binary Data
Summary
Using a Custom HTTP Client
Customizing Your Requests
Implementing Client Middleware
Connection Pooling
Summary
Your First HTTP Server
Setting Up Request Handlers
Testing Your Server
The Request Struct
Attaching Metadata to a Request
Processing Streaming Requests
Streaming Data as Responses
Summary
The Handler Type
Sharing Data across Handler Functions
Writing Server Middleware
Writing Tests for Complex Server Applications
Summary
Aborting Request Handling
Server-Wide Time-Outs
Implementing Graceful Shutdown
Securing Communication with TLS
Summary
gRPC and Protocol Buffers
Writing Your First Service
A Detour into Protobuf Messages
Multiple Services
Error Handling
Summary
Streaming Communication
Receiving and Sending Arbitrary Bytes
Implementing Middleware Using Interceptors
Summary
Securing Communication with TLS
Robustness in Servers
Robustness in Clients
Connection Management
Summary
Working with Object Stores
Working with Relational Databases
Summary
Logs, Metrics, and Traces
Emitting Telemetry Data
Summary
Managing Configuration
Distributing Your Application
Deploying Server Applications
Summary
About the Author
About the Technical Editor
Acknowledgments
WILEY END USER LICENSE AGREEMENT

Preface

Unlock This Title

You do not have access to this section. Get the full version of this title with a SitePoint Premium Account.

Start Free TrialRead Free Preview

Already a Premium member? Sign In

Community Questions