Course Outline
Introduction to Distributed Systems
- Defining what constitutes a distributed system.
- Addressing common challenges: latency, consistency, and availability.
- Overview of system components and communication models.
Scalability Principles
- Distinguishing between vertical and horizontal scaling.
- Understanding load balancing and elasticity.
- Strategies for scaling storage, compute power, and I/O operations.
Architectural Patterns
- Client-server and multi-tier architectures.
- Service-oriented and microservice architectures.
- Event-driven architecture and the role of message queues.
CAP Theorem and Consistency Models
- An explanation of the CAP theorem.
- Comparing strong consistency with eventual consistency.
- Making informed choices between consistency and availability.
Data Distribution and Storage Strategies
- Techniques for partitioning and sharding.
- Replication strategies and quorum-based reads/writes.
- Utilizing distributed databases and key-value stores.
Communication and Coordination in Distributed Systems
- Protocols such as REST, gRPC, and message brokers (e.g., Kafka, RabbitMQ).
- Mechanisms for leader election and distributed consensus.
- Leveraging Zookeeper or etcd for system coordination.
Fault Tolerance and Reliability
- Designing systems for failure and implementing graceful degradation.
- Implementing retry mechanisms, timeouts, and circuit breakers.
- Enhancing monitoring, observability, and chaos engineering practices.
Cloud-Native and Modern Implementation Practices
- Containers, orchestration platforms, and Kubernetes.
- The principles of statelessness and immutability.
- Best practices for securing distributed systems.
Summary and Next Steps
Requirements
- A foundational understanding of basic networking and system design concepts.
- Practical experience with general software development practices.
- Familiarity with cloud computing and API design is advantageous.
Audience
- Software architects and technical leads.
- Backend engineers and DevOps professionals.
- System designers focused on building scalable cloud applications.
Custom Corporate Training
Training solutions designed exclusively for businesses.
- Customized Content: We adapt the syllabus and practical exercises to the real goals and needs of your project.
- Flexible Schedule: Dates and times adapted to your team's agenda.
- Format: Online (live), In-company (at your offices), or Hybrid.
Price per private group, online live training, starting from 4800 € + VAT*
Contact us for an exact quote and to hear our latest promotions
Testimonials (2)
Prepared project on which we could work from the start without wasting time to set up files not needed in exercises. Readiness to answer all questions that came up from participants.
Robert Walczak - Hitachi Energy
Course - Systems Modeling with SysML and Enterprise Architect (EA)
Practise exercises in EA.