Course Outline
Introduction to Distributed Systems
- What is a distributed system?
- Common challenges: latency, consistency, availability
- Overview of system components and communication models
Scalability Principles
- Vertical vs. horizontal scaling
- Load balancing and elasticity
- Scaling storage, compute, and I/O
Architectural Patterns
- Client-server and multi-tier architectures
- Service-oriented and microservice architectures
- Event-driven architecture and message queues
CAP Theorem and Consistency Models
- CAP theorem explained
- Strong vs. eventual consistency
- Choosing between consistency and availability
Data Distribution and Storage Strategies
- Partitioning and sharding
- Replication strategies and quorum reads/writes
- Distributed databases and key-value stores
Communication and Coordination in Distributed Systems
- REST, gRPC, message brokers (e.g., Kafka, RabbitMQ)
- Leader election and distributed consensus
- Using Zookeeper or etcd for coordination
Fault Tolerance and Reliability
- Designing for failure and graceful degradation
- Retry mechanisms, timeouts, and circuit breakers
- Monitoring, observability, and chaos engineering
Cloud-Native and Modern Implementation Practices
- Containers, orchestration, and Kubernetes
- Statelessness and immutability
- Best practices for distributed system security
Summary and Next Steps
Requirements
- An understanding of basic networking and system design concepts
- Experience with general software development practices
- Familiarity with cloud computing and API design is helpful
Audience
- Software architects and technical leads
- Backend engineers and DevOps professionals
- System designers building scalable cloud applications
Testimonials (5)
The practice on each case, the good explanation, very understandable and extensive knowledge of the topics; a real example was used to practice
ESTEFANNY GIL MORA - Global K S.A. de C.V.
Course - Use Case Modeling
Machine Translated
-Knowledge of the teacher in the subject was really good. He was able to explain very nicely and was able to answer all the questions at that moment. -To be able to know what all the tool is capable of was really good. -The structure he showed, like using scenarios and traceability would be really helpful in my day-to-day work.
Harsha Jain - Scania CV AB
Course - Introduction to Enterprise Architect
Great knowledge.
Marie - Forsvarets forkningsinstitutt
Course - Systems Modeling with SysML and Enterprise Architect (EA)
Many examples.
Alberto Laguna Aceves - Isdefe
Course - UML in Enterprise Architect (workshops)
Machine Translated
I really enjoyed the real examples and exercises.