This course was created with the
course builder. Create your online course today.
Start now
Create your course
with
Autoplay
Autocomplete
Previous Lesson
Complete and Continue
Golang Concurrency Masterclass
Introduction to Golang Concurrency
Why concurrency is important with Golang?
What you should expect from this course?
Understanding Mechanics of Goroutines
Fundamentals of Concurrency in Go
Goroutine Basics
Goroutine Lifecycle
Goroutine Scheduling
Memory Management for Goroutines
Goroutine Pitfall: Data Race
Goroutine Pitfall: Deadlocks
Concurrency Primitives and `sync` package
Introduction of threads synchronization
Channels
WaitGroups
Once
Mutexes
Conditionals
Map (thread safe)
Pool
Atomic Operations
Contexts
Advanced Concurrency Patterns
Introduction to Concurrency Patterns
Fan-in and Fan-out
Pipeline (Generator) Pattern
Worker Pools
Pub-Sub Pattern
Active Object (Actor) pattern
Monitor Object pattern
Reactor pattern (event handler)
Semaphore pattern
Concurrency Best Practices
Error Handling in Concurrent Code
Testing Concurrent Code
Graceful shutdown
Real-world project #1: High-Performance Concurrent Web Crawler
Understanding the problem and project outcome
Design
Implementation
Testing
Refactoring
Real-world project #2: Parallel File Processing Pipeline
Understanding the problem and project outcome
Design
Implementation
Testing
Refactoring
Real-world project #3: Concurrent Distributed Task Queue
Understanding the problem and project outcome
Design
Implementation
Testing
Refactoring
Real-world project #4: Distributed In-Memory Key-Value Store
Understanding the problem and project outcome
Design
Implementation
Testing
Refactoring
Real-world project #5: Concurrent MapReduce Framework
Understanding the problem and project outcome
Design
Implementation
Testing
Refactoring
Conclusion
Recap of Key Concepts
Final Thoughts and Next Steps
Testing
Lesson content locked
If you're already enrolled,
you'll need to login
.
Enroll in Course to Unlock