Advanced Spring Boot 4: Event-Driven Architecture (Kafka) · Pelajaran

Peristiwa, Produsen, dan Konsumen

Pelajari komponen dasar EDA: peristiwa sebagai fakta yang tidak dapat diubah, produsen yang menghasilkan peristiwa, serta konsumen yang meresponsnya.

Pelajaran 2 dari 412 langkah

Peristiwa, Produsen, dan Konsumen adalah pelajaran Advanced Spring Boot 4: Event-Driven Architecture (Kafka) gratis di CoddyKit. Ini adalah pelajaran 2 dari 4. Kamu bisa membaca pelajaran lengkapnya di bawah secara gratis — lalu praktikkan langsung di browser dengan editor kode bawaan dan tutor AI 24/7. Ini adalah bagian dari jalur belajar Advanced Spring Boot 4: Event-Driven Architecture (Kafka), dan progresmu tersinkronisasi di web dan aplikasi CoddyKit. Kursus Advanced Spring Boot 4: Event-Driven Architecture (Kafka) mencakup 4 pelajaran total.

Bagian dari pelajaran ini belum diterjemahkan dan ditampilkan dalam bahasa Inggris.

Welcome to the Core!

Time for EDA's building blocks: events, producers, and consumers. Get these and you can build scalable, reactive systems.

What is an Event?

An event is a notification that something significant happened — an immutable, past-tense fact like 'OrderCreated'. It states facts, never commands.

Event Characteristics

Events behave like historical records: immutable once published, atomic (one complete occurrence), and decoupled — the event never knows who will process it.

Anatomy of an Event

An event typically carries a timestamp, an event type, a unique ID, and a payload — just enough data for consumers to react meaningfully.

Event Data Example

An event is really just a data structure. This snippet shows a simple Java OrderCreatedEvent POJO holding the facts — run it to see one created.

public class Main {
  // Define an 'Event' as a simple data holder
  static class OrderCreatedEvent {
    String orderId;
    String customerId;
    double amount;
    long timestamp;

    public OrderCreatedEvent(String orderId, String customerId, double amount) {
      this.orderId = orderId;
      this.customerId = customerId;
      this.amount = amount;
      this.timestamp = System.currentTimeMillis();
    }

    @Override
    public String toString() {
      return "OrderCreatedEvent{" +
             "orderId='" + orderId + '\'' +
             ", customerId='" + customerId + '\'' +
             ", amount=" + amount +
             ", timestamp=" + timestamp +
             '}';
    }
  }

  public static void main(String[] args) {
    // Create an instance of our event
    OrderCreatedEvent event = new OrderCreatedEvent("ORD-12345", "CUST-67890", 99.99);

    // Print the event details
    System.out.println("New Event Created:");
    System.out.println(event);
  }
}

What is a Producer?

A producer is any service that generates and publishes events. When something happens — say a user places an order — the producer emits the event for it.

Producer's Role

A producer just announces facts: it creates an event and publishes it to a broker like Kafka. It's fully decoupled — it has no idea who's listening.

What is a Consumer?

A consumer subscribes to events and reacts to them. When an event is published, any interested consumer picks it up and runs its own logic.

Consumer's Role

Consumers are the reactive side: they subscribe to event types, run business logic in response, and work independently of one another.

The Event Flow

The flow is simple: Producer → Event → Consumer. One OrderCreated event can trigger a Notification service and an Inventory service at once — fully decoupled.

Quick Check

Let's test your understanding of events in EDA.

Recap & Next Steps

You've got EDA's core: events (immutable facts), producers (emit them), and consumers (react). Next: where EDA truly shines.

Gratis untuk memulai

Belajar Advanced Spring Boot 4: Event-Driven Architecture (Kafka) dengan tutor AI — gratis

Tulis dan jalankan kode asli di browser kamu, dapatkan bantuan instan dari tutor AI 24/7, dan lanjutkan di mana kamu tinggalkan di web atau aplikasi.

Kursus
12
Pelajaran
48

Pertanyaan yang Sering Diajukan

Apakah pelajaran “Peristiwa, Produsen, dan Konsumen” gratis?

Ya — teks lengkap “Peristiwa, Produsen, dan Konsumen” gratis dibaca di sini di web. Untuk praktiknya secara interaktif (editor kode bawaan dan tutor AI 24/7) dan buka sisa kursus Advanced Spring Boot 4: Event-Driven Architecture (Kafka), upgrade ke CoddyKit PRO. Kursus Advanced Spring Boot 4: Event-Driven Architecture (Kafka) mencakup 4 pelajaran total.

Apa yang akan aku pelajari di “Peristiwa, Produsen, dan Konsumen”?

Pelajari komponen dasar EDA: peristiwa sebagai fakta yang tidak dapat diubah, produsen yang menghasilkan peristiwa, serta konsumen yang meresponsnya. Kamu berlatih Advanced Spring Boot 4: Event-Driven Architecture (Kafka) dengan kode praktik yang langsung kamu jalankan di browser, dan tutor AI 24/7 menjawab pertanyaanmu saat kamu mengerjakan pelajaran ini.

Apakah aku perlu pengalaman untuk memulai Advanced Spring Boot 4: Event-Driven Architecture (Kafka)?

Tidak diperlukan pengalaman sebelumnya. Advanced Spring Boot 4: Event-Driven Architecture (Kafka) di CoddyKit dirancang untuk pemula hingga pelajar tingkat lanjut, jadi kamu bisa memulai di sini atau dari awal dan belajar sesuai kecepatan kamu sendiri. Ini adalah pelajaran 2 dari 4.

Berapa lama pelajaran “Peristiwa, Produsen, dan Konsumen” memakan waktu?

Sebagian besar pelajaran CoddyKit memakan waktu sekitar 5–10 menit. Setiap pelajaran ringkas dan interaktif, jadi kamu membuat kemajuan stabil dan melanjutkan dari tempat kamu tinggalkan di web dan aplikasi.

Bisakah aku menulis dan menjalankan kode dalam pelajaran Advanced Spring Boot 4: Event-Driven Architecture (Kafka) ini?

Ya. Setiap pelajaran Advanced Spring Boot 4: Event-Driven Architecture (Kafka) menyertakan editor kode bawaan, jadi kamu menulis dan menjalankan kode nyata langsung di browser dan mendapatkan umpan balik AI instan — tidak diperlukan penyiapan lokal.

Semua pelajaran dalam kursus ini

  1. Memahami Prinsip EDA
  2. Peristiwa, Produsen, dan Konsumen
  3. Manfaat dan Kasus Penggunaan EDA
  4. Notifikasi Peristiwa vs Transfer Status
← Kembali ke Advanced Spring Boot 4: Event-Driven Architecture (Kafka)