Belajar Floci - Perbandingan Ekosistem Emulator & Limitations
Episode 25 of 28

Belajar Floci - Perbandingan Ekosistem Emulator & Limitations

Decision matrix emulator AWS: floci (MIT, tercepat, 47 service) vs LocalStack paid vs MiniStack (60+ service, real DB containers) vs Moto (library Python) vs AWS SAM CLI — plus limitations jujur Floci dan mitigasinya, ditutup latihan menulis ADR pemilihan

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

Pendahuluan

Setelah 24 episode bersama Floci, adil juga kita melebar: kapan Floci bukan pilihan tepat? Ekosistem emulator lokal punya beberapa pemain dengan filosofi berbeda, dan engineer dewasa memilih berdasarkan konteks — bukan hype.

Episode ini menyusun decision matrix yang bisa langsung dipakai tim kalian, mengakui limitasi Floci secara terbuka, dan menutup dengan latihan menulis ADR (Architecture Decision Record).

Decision Matrix

Lima Pemain, Lima Filosofi

ToolLisensi/BiayaKekuatanTitik LemahPaling Cocok
flociMIT, gratisTercepat (24 ms), ringan, no-token, ±47 serviceMuda (Feb 2026), docs berkembang, conformance gapsCI speed-critical & open-source projects
LocalStack (paid)Dari $39/mo+Coverage luas matang, support komersial, fitur pro (pods, IAM enforcement)Berbayar, butuh token/authEnterprise dengan SLA & fitur pro
MiniStackOpen-source~60+ service; real Postgres/MySQL/Redis containers — DB fidelity tertinggiLebih berat dari flociTim yang stack-nya didominasi database
MotoOpen-sourceLibrary Python in-process — tanpa Docker sama sekaliHanya dunia Python; bukan server umumUnit test granular di codebase Python
AWS SAM CLIResmi AWSParity runtime Lambda resmiServerless only, bukan emulator layanan umumProject SAM/serverless murni

Cara Menggunakan Matrix Ini

Tiga pertanyaan penyaring:

  1. Bahasa & bentuk test apa? Python unit test → Moto sering cukup; integration lintas-bahasa → server emulator.
  2. Fidelity apa yang mahal bagi kalian? Perilaku SQL/Redis nyata → MiniStack unggul; kecepatan loop & CI → floci unggul.
  3. Berapa budget & toleransi risiko? Support vendor + maturity → LocalStack paid; zero-cost open source → floci/MiniStack/Moto.

Bukan zero-sum: banyak organisasi memakai floci untuk CI harian + LocalStack paid untuk skenario parity kompleks, atau floci + MiniStack sekaligus (masing-masing untuk layer beda).

Limitations

Kejujuran Tentang Floci

Series ini tidak akan lengkap tanpa daftar kelemahan eksplisit:

Limitations floci (per v1.5.x)
1. Proyek muda - rilis publik Feb 2026; API internal & docs masih berkembang cepat
2. Conformance gaps pada layanan kompleks (terutama operasi lanjutan DynamoDB)
3. BUKAN jaminan parity penuh AWS - perilaku edge case bisa beda
4. IAM enforcement longgar by design - policy tak dipaksakan runtime
5. Coverage ±47 service < LocalStack paid / MiniStack (60+)

Mitigasi

Untuk setiap limitasi ada pola penanggulangan yang sudah kita bangun sepanjang series:

  • Gaps conformance → contract test probe (ep.14) + selective test ke sandbox AWS untuk path kritis.
  • Parity edge case → pin versi image (ep.20–21), pantau changelog tiap upgrade, gerbang re-run suite penuh saat migrasi (ep.22).
  • IAM longgar → simulator policy untuk logika (ep.9); enforcement kritis tetap divalidasi ke AWS sungguhan.
  • Proyek muda → ikuti repo/changelog, kontribusi upstream bila menemukan gap — ekosistemnya responsif.

Praktik

Target outline: tulis ADR pemilihan emulator untuk skenario tim given.

# ADR 0007: Emulator AWS Lokal untuk Pipeline Integration Test
 
## Status
Accepted (2026-08-22)
 
## Konteks
Tim backend (12 dev, stack Python+Go) menjalankan integration suite
~40x/hari di GitHub Actions. Sunset LocalStack Community (Mar 2026).
Layanan inti: S3, DynamoDB (query/GSI/batch), SQS FIFO+DLQ, SNS,
Lambda python/node, Step Functions sederhana.
 
## Pilihan yang Dipertimbangkan
floci | LocalStack Team paid | MiniStack | status quo (AWS sandbox)
 
## Keputusan
floci sebagai primary emulator; sandbox AWS utk smoke gate mingguan.
 
## Alasan
- Startup 24ms & image 90MB memangkas ~4 menit/job x ~800 job/bln
- Semua layanan inti tercakup FULL/PARTIAL (audit ep.14: 96% probe OK)
- Tanpa token -> CI tetap bekerja offline & tanpa secret tambahan
- Biaya nol vs $39+/bln per seat
 
## Konsekuensi Positif
Feedback loop CI lebih cepat; tidak ada dependency vendor.
 
## Konsekuensi Negatif / Risiko Mitigasi
- Conformance gap DynamoDB transaksi -> contract tests + sandbox mingguan
- Proyek muda -> image pinned 1.5.15, upgrade via PR + re-run suite

Struktur ADR di atas adalah format standar industri (status/konteks/keputusan/konsekuensi). Latihannya: ganti konteks dengan kondisi tim kalian sendiri — jumlah dev, bahasa, layanan dipakai, volume CI — lalu lihat apakah kesimpulan masih sama. Sering kali ia bergeser (mis. database-heavy → MiniStack masuk).

Tip

Simpan hasil audit coverage (episode 14) sebagai lampiran ADR — angka probe konkret jauh lebih meyakinkan dalam review daripada opini.

Penutup

Rangkuman episode ini:

  • Matrix lima tool: floci (cepat/gratis/muda), LocalStack paid (matang/berbayar), MiniStack (DB fidelity), Moto (unit test Python), SAM CLI (serverless resmi).
  • Limitations Floci eksplisit: muda, gaps conformance, IAM longgar, coverage lebih sempit — semua punya pola mitigasi yang sudah dilatih.
  • ADR dengan data audit membuat keputusan bisa direview ulang secara objektif saat konteks berubah.

Episode 26 melihat ke depan: ekosistem & tren modern 2026 — ledakan emulator pasca-sunset, diskursus sustainability open-source, dan posisi Floci di dalamnya. Sampai jumpa!

Belajar Floci - Perbandingan Ekosistem Emulator & Limitations | Belajar Floci