Thank you for sending your enquiry! One of our team members will contact you shortly.
Thank you for sending your booking! One of our team members will contact you shortly.
Course Outline
Introduction to Distributed Systems
- Defining what constitutes a distributed system.
- Key challenges: latency, consistency, and availability.
- Survey of system components and communication models.
Principles of Scalability
- Differences between vertical and horizontal scaling.
- Load balancing and elastic resource management.
- 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 message queues.
CAP Theorem and Consistency Models
- Explanation of the CAP theorem.
- Strong versus eventual consistency.
- Making informed choices between consistency and availability.
Data Distribution and Storage Strategies
- Partitioning and sharding techniques.
- Replication strategies and quorum reads/writes.
- Distributed databases and key-value stores.
Communication and Coordination in Distributed Systems
- Protocols such as REST, gRPC, and message brokers (e.g., Kafka, RabbitMQ).
- Leader election and distributed consensus mechanisms.
- Utilizing Zookeeper or etcd for system coordination.
Fault Tolerance and Reliability
- Designing for failure and implementing graceful degradation.
- Implementing retry mechanisms, timeouts, and circuit breakers.
- Monitoring, observability, and chaos engineering practices.
Cloud-Native and Modern Implementation Practices
- Containers, orchestration tools, and Kubernetes.
- Principles of statelessness and immutability.
- Best practices for securing distributed systems.
Summary and Future Steps
Requirements
- A solid grasp of fundamental networking and system design principles.
- Practical experience with standard software development practices.
- Knowledge of cloud computing and API design is beneficial.
Target Audience
- Software architects and technical team leads.
- Backend engineers and DevOps specialists.
- System designers developing scalable cloud-based applications.
21 Hours
Testimonials (3)
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)
The trainer updates the course according to the expectations of the learners
Alexandru
Course - Software Architecture in Cloud
Practise exercises in EA.