Kerangka Materi

Hari 1: Fondasi Arsitektur Berbasis Event dengan Go

  • Pendahuluan tentang EDA
    • Apa itu Arsitektur Berbasis Event?
    • Perbandingan Sistem Monolitik, Mikroservis, dan Berbasis Event
    • Cara model konkurensi Go dan goroutines yang ringan menjadikannya ideal untuk EDA
  • Konsep Inti & Manfaat
    • Penyisihan, skalabilitas, dan ketahanan dalam sistem perusahaan
    • Mendefinisikan Event, Producers, Consumers, dan Event Brokers
    • Contoh dunia nyata dan studi kasus di mana Go menggerakkan sistem event berkinerja tinggi
  • Tetapan CAP & Trade-offs dalam EDA
    • Ikhtisar Konsistensi, Ketersediaan, dan Ketahanan Partisi
    • Dampak EDA pada sifat-sifat ini
    • Strategi untuk menyeimbangkan konsistensi dan ketersediaan dalam sistem berbasis Go

Hari 2: Event, Pesan, dan Pola Komunikasi di Go

  • Pemahaman Jenis Event
    • Domain Events vs. Integration Events
    • Event sinkron vs. asinkron dalam aplikasi Go
  • Polanya Pesan dalam Praktik
    • Publish-Subscribe (Pub/Sub) di Go
    • Cara merancang dan memstrukturkan muatan event menggunakan JSON, Protocol Buffers, atau Avro di Go
  • Implementasi Penanganan Event di Go
    • Ikhtisar perpustakaan dan kerangka kerja Go populer untuk pesan
    • Contoh kode: mengirim dan memproses event menggunakan pola idiomatik Go
    • Sesi praktik: Membuat layanan berbasis event sederhana di Go

Hari 3: Sistem Pesan & Event Brokers dengan Go

  • Memilih dan Mengintegrasikan Event Brokers
    • Ikhtisar broker populer: Apache Kafka, RabbitMQ, dan NATS
    • Perbandingan kasus penggunaan dan praktik terbaik untuk sistem berbasis Go
  • Penyetelan Infrastruktur Pesan
    • Penyiapan Docker Compose untuk Kafka, RabbitMQ, atau NATS
    • Mengonfigurasi topik, pertukaran, antrian, dan saluran
    • Ikhtisar perpustakaan klien Go
  • Sesi Workshop Praktis
    • Membangun mikroservis Go contoh yang menghasilkan dan mengkonsumsi event
    • Mengintegrasikan layanan dengan broker event yang dipilih
    • Debugging dan pengujian aliran event

Hari 4: Penyebaran, Pemantauan, dan Topik Lanjutan dalam Go EDA

  • Menyebarkan Aplikasi Berbasis Event Go di Kubernetes
    • Mengkontainerkan aplikasi Go untuk produksi
    • Menyebar Kafka (atau broker lainnya) pada klaster Kubernetes
    • Pendahuluan KEDA (Kubernetes Event-Driven Autoscaling) untuk penskalaan konsumen event
  • Penanganan Error dan Pemantauan
    • Menangani kegagalan event dengan strategi
    • Mengimplementasikan observabilitas dalam layanan Go
  • Topik Lanjutan & Q&A
    • Mengeksplorasi Arsitektur Berbasis Event Tanpa Server dengan Go
    • Event Choreography vs. Orchestration: Kasus penggunaan dan pertimbangan desain
    • Pitfall umum, pelajaran yang dipetik, dan praktik terbaik
    • Sesi Q&A terbuka dan troubleshooting interaktif

Persyaratan

  • Kemahiran dalam Go (Golang), termasuk penggunaan goroutines dan channels
  • Pemahaman dasar tentang model arsitektur perangkat lunak seperti monolitik dan mikroservis
  • Kenalan dengan Docker dan Docker Compose
  • Pengetahuan dasar tentang REST APIs dan konsep jaringan
  • Pengalaman dengan alat baris perintah dan Git
  • Opsional tetapi membantu: paparan sebelumnya terhadap Kubernetes dan sistem pesan seperti Kafka, RabbitMQ, atau NATS

Audience

  • Pengembang Go yang membangun aplikasi berbasis event yang skalabel
  • Insinyur perangkat lunak beralih dari arsitektur monolitik atau REST ke sistem asinkronus
  • DevOps dan insinyur cloud yang bekerja dengan mikroservis kontainer atau terdistribusi
  • Arsitek teknikal dan desainer sistem yang mengeksplorasi pola EDA menggunakan Go
 28 Jam

Jumlah Peserta


Biaya per Peserta

Testimoni (7)

Kursus Mendatang

Kategori Terkait