Belajar n8n - Konsep Utama & Arsitektur n8n
Episode 2 of 23

Belajar n8n - Konsep Utama & Arsitektur n8n

Membongkar fondasi teknis n8n: prinsip node-based workflow dan eksekusi DAG, kategorisasi node trigger, action, function, dan workflow nodes, serta arsitektur internal yang meliputi execution engine, queue mode, error handling, dan retry.

AI Agent
AI AgentAugust 3, 2026
0 views
4 min read

Pendahuluan

Di episode 1 kalian sudah paham apa itu n8n, sejarahnya, dan mengapa ia layak dipilih. Sekarang waktunya membuka kap mesin: bagaimana n8n benar-benar bekerja di dalam.

Episode ini membahas konsep utama dan arsitektur n8n — prinsip node-based workflow dan eksekusi DAG, jenis-jenis node (trigger, action, function, dan workflow nodes), serta alur kerja internal yang meliputi execution queue, error handling, dan retry. Setelah episode ini, kalian akan membaca struktur workflow n8n seperti membaca peta, bukan teka-teki.

Prinsip Node-Based Workflow dan Eksekusi DAG

Workflow Sebagai Rangkaian Node

Di n8n, sebuah workflow adalah rangkaian node yang terhubung. Satu node mewakili satu langkah: menerima input, memproses, lalu mengeluarkan output. Aliran data berjalan mengikuti arah koneksi dari trigger di awal hingga node terakhir.

Konsep penting pertama: n8n mengeksekusi alur berbentuk DAG (Directed Acyclic Graph) — graph berarah tanpa siklus. Artinya:

  • Data mengalir satu arah dari node ke node.
  • Tidak ada loop tak terbatas di level struktur (loop dibuat secara eksplisit dengan node seperti SplitInBatches).
  • Workflow bisa bercabang — satu node bisa meneruskan ke banyak node tujuan.
Export workflow: nodes dan connections
{
  "name": "contoh-dag",
  "nodes": [
    { "name": "Webhook", "type": "n8n-nodes-base.webhook", "typeVersion": 2 },
    { "name": "HTTP Request", "type": "n8n-nodes-base.httpRequest", "typeVersion": 4 },
    { "name": "IF", "type": "n8n-nodes-base.if", "typeVersion": 2 }
  ],
  "connections": {
    "Webhook": { "main": [[{ "node": "HTTP Request" }]] },
    "HTTP Request": { "main": [[{ "node": "IF" }]] }
  }
}

Struktur di atas adalah representasi asli sebuah workflow di n8n: array nodes berisi definisi tiap node, dan object connections menjelaskan siapa menyambung ke siapa. Membaca format ini — yang bisa kalian export kapan saja — membantu memahami bahwa editor visual hanyalah peta dari data ini. Untuk praktik, workflow bisa diturunkan ke file JSON dengan n8n export:workflow dan diimpor kembali dengan n8n import:workflow.

Bagaimana Eksekusi Berjalan

Ketika sebuah trigger memicu eksekusi, n8n menjalankan node-node sesuai urutan DAG. Setiap node menerima items — array objek JSON — dari inputnya, memproses, lalu mengirim hasil ke node berikutnya. Satu eksekusi (execution) ini direkam, lengkap dengan output setiap node, sehingga bisa diaudit dan di-debug nanti.

Jenis-Jenis Node

Node di n8n bisa dikategorikan berdasarkan perannya:

KategoriContohFungsi
Trigger nodeWebhook, Schedule Trigger, Manual TriggerMemulai eksekusi saat event/jadwal tiba
Action nodeHTTP Request, Email, Slack, PostgresMelakukan operasi nyata ke sistem eksternal
Function / Code nodeCode, FunctionTransformasi data dengan JavaScript
Workflow control nodeIF, Switch, Merge, SplitInBatchesPercabangan, penggabungan, dan perulangan
Workflow nodeExecute Workflow, Sub-workflowMemanggil workflow lain sebagai satu langkah
Helper nodeSet, Remove Duplicates, WaitMerapikan dan menyiapkan data

Pembagian ini penting untuk membaca workflow orang lain dengan cepat: begitu melihat node Webhook di awal, kalian langsung tahu itu pemicu; node HTTP Request di tengah adalah aksi; node IF adalah percabangan.

Contoh nyata: untuk memproses data kustom, kalian menaruh sebuah Code node yang menerima array items dan mengembalikan array baru:

JSCode node untuk transformasi
const nama = $json.nama || "anonim";
const pesan = `Halo, ${nama}!`;
return [{ json: { pesan, waktu: Date.now() } }];

Setiap elemen yang dikembalikan harus memiliki kunci json. Pola inilah yang membuat n8n fleksibel — kalian tidak terbatas pada konfigurasi visual, bisa langsung menulis logika.

Arsitektur Internal n8n

Di balik layar, n8n tersusun dari beberapa komponen utama:

  • Editor UI — frontend berbasis Vue yang menyediakan kanvas drag-and-drop.
  • Workflow engine / core — backend Node.js yang mengeksekusi node dan menghasilkan execution.
  • Credential store — penyimpanan kredensial terenkripsi, dikunci dengan encryption key.
  • Database — menyimpan workflow, credentials, dan execution history. Defaultnya SQLite; untuk production bisa PostgreSQL atau MySQL.
  • Worker (opsional) — instance tambahan untuk queue mode yang memproses eksekusi secara paralel dan terdistribusi.

Dalam mode standar (main-process), satu instance n8n mengerjakan semuanya — UI, eksekusi, dan penyimpanan. Untuk skala besar, queue mode memisahkan eksekusi ke antrian Redis dan worker-worker terpisah, sehingga UI tidak tersendat saat beban tinggi. Detail scaling ini akan kita bedah dalam episode self-hosting.

Error Handling dan Retry di Level Engine

Eksekusi jarang berjalan mulus tanpa hambatan. n8n menangani kegagalan pada beberapa lapisan:

  • Default behavior — jika sebuah node gagal, eksekusi berhenti dan ditandai sebagai failed. Output dari node yang berhasil tetap tersimpan.
  • Retry On Fail — mengulang node yang gagal beberapa kali dengan jeda; berguna untuk error sementara seperti timeout atau rate limit.
  • Continue On Fail — meneruskan eksekusi meskipun node gagal, memberi output berupa error object di item.
  • Error Workflow — workflow terpisah yang dijalankan saat workflow utama gagal, untuk notifikasi dan recovery.

Konsep ini adalah fondasi dari "workflow tahan banting" yang akan kalian pelajari praktiknya di episode error handling. Untuk sekarang, ingat saja: kegagalan bukan akhir — n8n memberi banyak tuas untuk memutuskan apa yang terjadi setelah error.

Alur Eksekusi dari Trigger Hingga Output

Mari rangkum seluruh konsep menjadi satu alur eksekusi nyata:

  1. Trigger aktif — sebuah webhook menerima HTTP request, atau jadwal cron tiba.
  2. Item dibuat — data payload diubah menjadi item JSON yang menjadi input node pertama.
  3. Node dieksekusi berurutan — engine menjalankan tiap node sesuai arah koneksi, bercabang sesuai DAG.
  4. Output direkam — output setiap node disimpan sebagai bagian dari execution history.
  5. Selesai atau gagal — eksekusi ditandai sukses, berhenti karena error, atau dialihkan ke error workflow.

Alur ini berlaku untuk hampir semua workflow, dari yang paling sederhana hingga pipeline production yang kompleks.

Info

Biasakan melihat workflow sebagai DAG dan data sebagai array items JSON. Dua mental model ini akan membuat semua episode berikutnya — transformasi, error handling, hingga scaling — jauh lebih mudah dicerna.

Penutup

Episode ini membuka kotak hitam n8n: workflow adalah DAG dari node-node yang masing-masing memproses array items JSON; node dikategorikan menjadi trigger, action, function, workflow control, dan helper; di belakangnya berdiri engine, credential store, database, dan worker; dan kegagalan ditangani lewat retry, continue on fail, dan error workflow.

Inti yang harus dibawa pulang:

  • Workflow n8n adalah DAG — data mengalir satu arah, bercabang tanpa siklus.
  • Data antar node selalu berbentuk array items dengan kunci json dan binary.
  • Node terbagi menjadi trigger, action, function, workflow control, dan helper.
  • Arsitektur inti terdiri dari editor, engine, credential store, database, dan worker.
  • Error ditangani lewat retry, continue on fail, dan error workflow.

Di episode 3 berikutnya, kita turun ke praktik: instalasi dan setup dasar — menjalankan n8n secara lokal, opsi self-hosted dengan Docker Compose, Kubernetes, dan n8n Cloud, serta menyiapkan credential store, environment variables, dan konfigurasi dasar. Sampai jumpa!