Pelatihan .NET Microservices

Pada tanggal 14 – 17 Maret 2023 telah diadakan pelatihan dengan topik .NET Microservices. Peserta dari pelatihan ini adalah tim pengembang dari PT Sanghiang Perkasa (KALBE Nutritionals). Pelatihan ini dilaksanakan secara online via Microsoft Teams.

Microservices adalah architecture yang saat ini populer digunakan sebagai model dalam pembuatan aplikasi cloud yang modern. Di dalam microservices setiap aplikasi di bangun sebagai sekumpulan service dan setiap layanan berjalan dalam prosesnya sendiri. Masing-masing dari aplikasi tersebut, harus autonom dan mampu untuk saling berkomunikasi satu dengan yang lain melalui kontrak yang disepakati bersama (RESTful API, gRPC). Manfaat utama dalam mempergunakan microservices adalah agar team developer mampu mengembangkan aplikasi secara cepat dan terukur dengan membuat komponen-komponen dari aplikasi berjalan secara independen sehingga dapat memenuhi kebutuhan bisnis yang terus menerus berubah.

Pelatihan ini akan memberikan pemahaman tentang bagaimana membangun layanan microservices menggunakan .NET Core 6/7. Adapun materi yang dibahas pada pelatihan ini meliputi:

  • Introduction to Microservices Architecture
  • Limitation to monoliths
  • Challenges of Microservices
  • Architecting Microservices
  • First API with ASP.NET Core 6
  • Entity Framework Core
  • Entity Framework Migrations
  • DTO with AutoMapper
  • Data Layer & API Controllers
  • What is Container & Docker?
  • Dockerize your apps
  • Publish app to Docker Hub
  • Running your services on docker
  • Kubernetes Architecture
  • Kubernetes topics (deployment, NodePort, ClusterIP)
  • Communicating between Microservices
  • Synchronous Communication (HttpClient)
  • Resilient Communication Pattern
  • Implement retries with back-off
  • Circuit breaker
  • API Gateway / nGinx Ingress Controller
  • SQL Server Deployment (Database per Services).
  • Persistance Volume Claim, & Kubernetes Secret
  • Asynchronous Communication
  • What is Message Broker?
  • RabbitMQ Exchange, Queue, Routing Key, & Binding
  • Reactive Microservices with RabbitMQ and ASP Core
  • Reactive Microservices using MassTransit
  • Distributed Transaction & Saga Pattern
  • Delivering Microservices

Pelatihan RESTful API with ASP.NET Core 6

Pada tanggal 6-9 Maret 2023 telah diadakan pelatihan dengan topik RESTful API with ASP.NET Core 6. Peserta dari pelatihan ini adalah tim pengembang dari PT AJ Central Asia Raya (CAR Life). Pelatihan ini dilaksaksanakan secara inhouse di Wisma Car Life, Jakarta Barat.

Pelatihan ini bertujuan untuk memberikan konsep dan pengetahuan praktis tentang perancangan dan pengembangan RESTful services dengan teknologi ASP.NET Core 6. ASP.NET Core 6 sendiri adalah framework yang mendukung pengembangan aplikasi backend (RESTful) web services yang modern dari Microsoft. ASP.NET Core 6 didesain untuk kebutuhan aplikasi backend yang membutuhkan performa tinggi dan bisa digunakan diberbagai platform (Linux, Windows, Container, etc). ASP.NET Core Web API juga sangat cocok untuk berjalan pada environment cloud. ASP.NET Core Web API juga memudahkan pengembang untuk membuat aplikasi backend yang dapat digunakan untuk berbagai macam aplikasi client seperti aplikasi web (ASP MVC, React, Blazor)  dan aplikasi mobile (Android, Ios, Xamarin Cross Platform).

Adapun materi yang disampaikan pada pelatihan ini adalah sebagai berikut:

  • Introduction to .NET 6 & ASP.NET Core 6
  • MVC Pattern
  • Designing RESTful API
  • Creating the API and Returning Resources
  • Manipulating Resources and Validating Input
  • Working with Services and Dependency Injection
  • HTTP Status Code
  • Outer Facing vs Entity Model
  • DTO & Automapper
  • Filtering & Searching
  • Micro ORM with Dapper
  • Entity Framework Core
  • EF Migrations
  • Validating Data & Reporting Error
  • ASP.NET Security (ASP.NET Identity)
  • Authentication & Authorization
  • JWT (JSON Web Token)
  • JWT and ASP.NET Identity Integration
  • Claim based auth
  • Deployment to Cloud Services
  • Deploy API on container
  • Consuming RESTful API

Pelatihan Microservices Architecture with .NET Core

Pada tanggal 5 – 8 September 2022 telah diadakan pelatihan dengan judul Microservices Architecture with .NET Core. Peserta dari pelatihan ini adalah tim IT dari PT Pertamina Hulu RokanPekanbaru, Riau.

Microservices adalah suatu architecture yang dipakai sebagai model dalam pembuatan aplikasi cloud yang modern. Di dalam microservices setiap aplikasi di bangun sebagai sekumpulan service dan setiap layanan berjalan dalam processnya sendiri. Masing-masing dari aplikasi tersebut saling berkomunikasi melalu API (Application Programing Interface). Manfaat utama dalam mempergunakan microservices adalah agar team developer mampu mengembangkan aplikasi secara cepat dengan membuat komponen-komponen dari aplikasi berjalan secara independen sehingga dapat memenuhi kebutuhan bisnis yang terus menerus berubah.

Apa yang membedakan Architecture Microservices dengan pendekatan yang lebih tradisional seperti Monolithic Architecture adalah bagaimana framework ini memecah aplikasi menjadi fungsi intinya. Setiap fungsi ini disebut sebagai service, dapat dibangun dan dijalankan secara independen, yang berarti service tersebut dapat berfungsi (dan gagal) tanpa berdampak negatif pada fungsi-fungsi yang lain.

Pelatihan ini akan memberikan pemahaman tentang bagaimana membangun layanan microservices menggunakan .NET Core 6. Adapun materi yang dibahas pada pelatihan ini meliputi:

  • RESTful Web API dengan ASP.NET Core 6
  • Entity Framework Core
  • DTO with AutoMapper
  • Data Layer & API Controllers
  • Docker & ASP.NET Core 6 Image
  • Publishing to Docker Hub
  • Container Network & Linking
  • Kubernetes Architecture
  • Kubernetes (yaml, NodePort, ClusterIP)
  • Synchronous Communication between services
  • API Gateway with nGinx Ingress Controller
  • SQL Server, Persistance Volume Claim, & Kubernetes Secret
  • Asynchronous Communication with Message Bus (RabbitMQ)
  • Study Case

Training Web Development with ASP.NET Core 6

Pada tanggal 9-13 Mei 2022, telah diadakan pelatihan dengan topik Web Development with ASP.NET Core 6. Peserta dari pelatihan ini adalah developer dari Information System Dept, Universitas Atmajaya Yogyakarta.

Pada pelatihan ini peserta mendapatkan materi tentang framework terbaru untuk pengembangan aplikasi web menggunakan teknologi Microsoft yaitu ASP.NET Core 6. ASP.NET Core 6 adalah framework yang di modern yang dapat berjalan pada banyak platform yang berbeda (Multiplatform). ASP.NET Core juga didesain agar optimal untuk dijalankan pada platform Cloud dan juga bersifat open source. Adapun daftar materi yang disampaikan pada pelatihan ini adalah sebagai berikut:

  • Introduction to .NET Core & ASP.NET Core
  • Web Server (Kestrel, IIS)
  • IDE Visual Studio Community 2019 / Visual Studio Code
  • .NET Core SDK & Runtime
  • ASP.NET Core Architecture
  • ASP.NET Routing
  • ASP.NET Controller
  • ASP.NET Model
  • ASP.NET View
  • Dependency Injection Concept
  • ASP.NET Core Middleware
  • Strongly Type ASP.NET MVC View
  • ASP.NET Core Helpers & Tag Helper
  • Partial View
  • View Component
  • View Layout
  • Micro ORM with Dapper
  • Entity Framework Core
  • EF Migrations
  • ASP.NET Security (ASP.NET Identity)
  • Authentication & Authorization
  • Deployment to Azure Cloud
  • Study Case

Online Training: RESTful API with ASP.NET Core 6 (PT Asuransi Tugu Pratama)

Pada tanggal 7-9 Februari 2022 telah diadakan pelatihan online dengan topik Building RESTful API with ASP.NET Core 6. Peserta dari pelatihan ini adalah tim pengembang dari PT Asuransi Tugu Pratama, Jakarta, Indonesia.

Pelatihan ini bertujuan untuk memberikan pengetahuan praktis tentang pengembangan web services (REST) dengan teknologi ASP.NET Core 6. ASP.NET Core 6 sendiri adalah framework yang mendukung pengembangan aplikasi backend (RESTful) web services yang modern dari Microsoft. ASP.NET Core 6 didesain untuk kebutuhan aplikasi backend yang membutuhkan performa tinggi dan bisa digunakan diberbagai platform (Linux, Windows, Container, etc). ASP.NET Core Web API juga sangat cocok untuk berjalan pada environment cloud. ASP.NET Core Web API juga memudahkan pengembang untuk membuat aplikasi backend yang dapat digunakan untuk berbagai macam aplikasi client seperti aplikasi web (ASP MVC, React, Blazor)  dan aplikasi mobile (Android, Ios, Xamarin Cross Platform).

Adapun materi yang disampaikan pada pelatihan ini adalah sebagai berikut:

  • Introduction to .NET 6 & ASP.NET Core 6
  • MVC Pattern & RESTful API
  • Minimal API
  • REST Constraints
  • Endpoint Routing
  • HTTP Method for access Resources
  • HTTP Status Code
  • Outer Facing vs Entity Model
  • DTO & Automapper
  • Filtering & Searching
  • Micro ORM with Dapper
  • Entity Framework Core
  • EF Migrations
  • Validating Data & Reporting Error
  • ASP.NET Security (ASP.NET Identity)
  • Authentication & Authorization
  • JWT (JSON Web Token)
  • JWT and ASP.NET Identity Integration
  • Claim based auth
  • Deployment to Cloud Services
  • Deploy API on container
  • Consuming RESTful API