Software Architecture in Golang: Resilience in HTTP Servers
Welcome to another Software Architecture in Go video, in today's episode we are discussing Resilience. Resilience is the "ability to provide and maintain an acceptable level of service in the face of faults and challenges to normal operation" For this concrete example I'm discussing how to make the "net/http.Server" type more Resilient by making sure the timeout fields are provided as well as describing other types in the same package that help prevent errors. ---- RELEVANT LINKS https://blog.cloudflare.com/the-compl... https://blog.cloudflare.com/exposing-... Example code: https://github.com/MarioCarrion/video... Learning Golang: Context package: Cancellations, Deadlines and Request-scoped values: • Learning Golang: Context package: Cancella... Golang Microservices: Graceful Shutdown: • Golang Microservices: Graceful Shutdown Playlist "Learning Go/Golang Concurrency Patterns" • Learning Go/Golang Concurrency Patterns Playlist "Software Architecture in Go": • Software Architecture and System Design in... Playlist "Learning Go": • Learning Go/Golang Playlist "Building Microservices in Go": • Building Microservices in Golang/Go Playlist "GoTools and Packages": • Golang/Go Tools and Packages Playlist "Testing in Go": • Testing in Golang/Go 00:00 Start 00:08 What is Resilience? 00:58 Timeouts in Go/Golang 03:41 ReadTimeout in Go/Golang 09:19 TimeoutHandler in Go/Golang 11:56 Conclusion --- Who am I: Hello👋🏼! I'm Mario, a Hands-on Software Architect and Lead Backend Engineer with more than 16 years of professional experience building all kinds of software including on-premise Industrial Automation Systems, Linux Accessibility Desktop and Browser Components as well as Distributed Advertising Microservices. Every week I will share with you different topics I've learned while working for small startups and large companies including the processes I've followed over the years for successfully delivering complex enterprise systems from start to end. Subscribe if you like Software Development, Software Architecture and Systems Design! Keep it up. Don't give up! #golang #softwarearchitecture #microservices --- Our affiliate links below Shop our Amazon favorites → https://www.amazon.com/shop/rubycarrion Shop my IG feed on my LIKEtoKNOWit (LTK) page → https://www.liketoknow.it/RubyCarrion Shop Top Deals and Featured Offers at Best Buy → https://bestbuy.7tiv.net/c/2558226/68... Get a 30 day FREE Trial of Epidemic Sound → https://www.epidemicsound.com/referra... Try Amazon Prime 30-day FREE Trial → https://amzn.to/3yf9a0f I love getting Cash Back and think you will too! Join for FREE and get $30 when you spend $30. https://www.rakuten.com/r/RUBYRA132?e... --- Our Vlog Channel / rubycarrion

Software Architecture in Golang: Caching Pattern: Write-Through for Scalability

Fundamentals of Backend Architecture - How to Design Scalable Software

Golang HTTP connections deep dive, using "net/http" package first, then using simple net sockets

THIS is the BEST Way to Write HTTP Services in Golang

The standard library now has all you need for advanced routing in Go.

7 Authentication Concepts Every Developer Should Know

golang context package explained: the package that changed concurrency forever

Building gRPC Interceptors in Golang: Client and Server (Unary and Streaming)

The Resilience Patterns your Microservices Teams Should Know by Victor Rentea

Software Architecture in Golang: Structured Logging using slog (Observability)

Turing Award Winner: Disagreeing with Google, Postgres, Future Problems | Mike Stonebraker

DIY Golang Web Server: No Dependencies Needed!

Why The Russian Accent Terrifies Everyone

This Is The BEST Way To Structure Your GO Projects

#18 Golang - Building an Efficient Worker Pool: Mastering Concurrency in Go

Billionaire's WARNING: I'm SELLING. The Crash Is Already Here!

Creator of C++: Bell Labs, Negative Overhead Abstraction, Mistakes | Bjarne Stroustrup

Golang 1.22: What is new?

Every Frontend Architecture Pattern Explained in 23 Minutes

