![]()
Arsitektur aplikasi modern menuntut fleksibilitas tinggi, kemampuan berkembang secara mandiri, serta ketahanan terhadap kegagalan layanan. Pendekatan terdistribusi muncul sebagai respons atas keterbatasan sistem terpusat, terutama ketika skala pengguna, kompleksitas fitur, dan kebutuhan keandalan terus meningkat. Model ini memungkinkan pengembangan, pengujian, dan penyebaran layanan secara independen sehingga tim dapat bergerak lebih cepat tanpa mengorbankan stabilitas sistem secara keseluruhan (Newman, 2021).
Pembelajaran berfokus pada perancangan layanan yang terpisah namun saling terhubung melalui antarmuka komunikasi yang terstandar. Peserta mempelajari cara membangun layanan backend terstruktur, mengelola akses data terisolasi, serta menerapkan praktik pengujian dan validasi agar interaksi antar layanan tetap konsisten. Pendekatan ini membantu membangun pemahaman menyeluruh mengenai bagaimana layanan-layanan kecil bekerja sebagai satu ecosystem yang terkoordinasi.
Materi lanjutan menekankan pengelolaan layanan pada skala produksi melalui otomasi penyebaran, pengaturan ketersediaan, serta penerapan strategi ketahanan sistem. Peserta dikenalkan pada mekanisme komunikasi sinkron dan asinkron, pengelolaan cache, pengendalian lalu lintas permintaan, serta pola penanganan kegagalan dan transaksi terdistribusi. Fondasi ini mendukung kemampuan mengelola arsitektur aplikasi modern yang tangguh, scalable, dan siap mendukung kebutuhan bisnis jangka panjang (Microsoft, 2023).
OBJECTIVES
1. Memahami prinsip dasar dan tantangan dalam arsitektur microservices
2. Memahami penerapan API dengan ASP.NET Core dan penggunaan Docker untuk containerization
3. Mampu mengelola komunikasi antar microservices baik secara synchronous menggunakan HttpClient dan REST API, maupun asynchronous menggunakan RabbitMQ dan MassTransit
4. Mampu mengoptimalkan aplikasi menggunakan Redis untuk caching dan API Gateway seperti nGinx atau Ocelot
AUDIENCE
1. DevOps Engineer
2. Software Engineer
3. Backend Developer
4. System Administrator
5. Cloud Architect
PREREQUISITES
Tidak ada training khusus yang dipersyaratkan
CONTENT
1. Introduction to Microservices
1.1 Limitation to Monoliths
1.2 Design Principles of Microservices and Architecting Microservices
1.3 Challenges of Microservices
2. API with ASP.NET Core Practical
2.1 Clean Architecture Concept
2.2 Exception Handling Middleware
2.3 Entity Framework Core
2.4 Entity Framework Migrations
2.5 DTO with AutoMapper
2.6 Data Layer & API Controllers
2.7 FluentValidation
2.8 Testing API with Postman or SOAPUI
3. Docker
3.1 What is Container & Docker?
3.2 Dockerize your Apps
3.3 Publish app to Docker Hub
3.4 Running your Services on Docker
4. AKS (Kubernetes)
4.1 Kubernetes Architecture
4.2 Kubernetes Topics (Deployment, NodePort, ClusterIP)
5. Communicating between Microservices
5.1 RESTAPI
5.2 Open API and Swagger
6. Synchronous Communication (HttpClient)
7. Fault Tolerance
7.1 Polly (Implementing Fault-Handling Policies in Applications)
7.2 Resilient Communication Pattern
7.3 Implement Retries with Back-Off (Wait and Retry)
7.4 Circuit Breaker
7.5 Fallback
7.6 Timeout
7.7 Bulkhead Isolation
8. Cache
8.1 Introduction to Caching (Theory)
8.2 Redis
8.3 Implementing Cache Mechanism in API service
9. API Gateway/nGinx Ingress Controller
9.1 Introduction of API Gateway
9.2 nGinx or Ocelot
9.3 Rate Limits
10. PostgreSQL or SQL Server Deployment (Database per Services)
11. Persistance Volume Claim, & Kubernetes Secret
12. Asynchronous Communication
12.1 Introduction of Asynchronous Communication
12.2 What is Message Broker?
12.3 RabbitMQ
12.4 RabbitMQ Exchange, Queue, Routing Key, & Binding
12.5 Reactive Microservices with RabbitMQ and ASP Core
12.6 Reactive Microservices using MassTransit
13. Distributed Transaction & Saga Pattern
14. Delivering Microservices
Course Features
- Lectures 16
- Quizzes 2
- Duration 64 hours
- Skill level All levels
- Language English
- Students 34
- Certificate Yes
- Assessments Yes
- 3 Sections
- 16 Lessons
- 64 Hours
- A. PERSIAPAN2
- 2. PEMBELAJARAN14
- 2.11. Introduction to Microservices
- 2.22. API with ASP.NET Core Practical
- 2.33. Docker
- 2.44. AKS (Kubernetes)
- 2.55. Communicating between Microservices
- 2.66. Synchronous Communication (HttpClient)
- 2.77. Fault Tolerance
- 2.88. Cache
- 2.99. API Gateway/nGinx Ingress Controller
- 2.1010. PostgreSQL or SQL Server Deployment (Database per Services)
- 2.1111. Persistance Volume Claim, & Kubernetes Secret
- 2.1212. Asynchronous Communication
- 2.1313. Distributed Transaction & Saga Pattern
- 2.1414. Delivering Microservices
- 3. PENUTUPAN2




