The Need For Speed: Scaling Go Microservices - Artur Kondas
summary
Shows concrete steps to turn SEPA batch payment processing that once took hours into minutes by benchmarking before scaling and applying small targeted fixes. Describes the four-step cycle: load test, analyze, apply simple changes, replay, and demonstrates replacing uncontrolled goroutine spawning with an orchestration of errgroup + sema and explicit waitgroups, tuning Go GC and AWS concurrency sweet spots, and using an in-house chaos-style load tester. Claims ~90% speed improvement on Form3’s high-volume Go services.
AI-written summary · about
chapters (8)
- 0:00Introduction and speaker intro
- 2:54Premature optimization risks
- 7:30SEPA Direct Debit challenge
- 15:58Benchmark first scale next approach
- 21:20Goroutines and async processing
- 27:42Error groups for concurrency
- 31:58Scaling beyond code tweaks
- 33:47Q&A and closing remarks
related talks
45mGo, Microservices and all the joy!
46mSimplifying Scalable Cloud Application Development with Go
31mSuccessful Go for microservices architecture
31mHow Go is Making us Faster
01h 03mGo & Microservices
52mTesting Microservices
01h 02mBuilding Microservice Architectures with Go
31mBuilding a microservices architecture with Go
