Arsitektur Sistem
RetailOS dibangun dengan arsitektur edge-cloud hybrid yang memungkinkan setiap toko beroperasi secara mandiri (offline-capable) sambil tetap tersinkronisasi dengan kantor pusat.
High-Level Architecture
Prinsip Desain
- Offline-First -- Setiap toko menyimpan data lokal di SQLite. Transaksi tidak pernah gagal karena internet mati.
- Event Sourcing Lite -- Semua perubahan di toko dicatat sebagai event di
event_logtable, kemudian di-sync ke Cloud Hub. - Command-Query Separation -- Cloud Hub mengirim perintah (update harga, push promo) sebagai
commands, toko mengirim data sebagaievents. - Single Binary per Tier -- Setiap tier (cloud, store, dc) adalah satu Go binary tanpa dependency eksternal selain database.
- RBAC Everywhere -- Setiap endpoint dilindungi role-based access control.
Komponen Detail
- Cloud Hub -- Backend kantor pusat (Go + PostgreSQL)
- Store Router -- Backend toko + offline sync
- DC Edge -- Backend gudang distribusi
- Data Flow -- Protokol sinkronisasi, MQTT topics
Security Layers
FAQ
Q: Apa yang terjadi jika internet mati di toko? A: Toko tetap beroperasi normal. Semua transaksi disimpan di SQLite lokal dan disinkronisasi otomatis saat internet kembali.
Q: Berapa lama data bisa tersimpan offline? A: Tidak ada batasan waktu. Data tetap aman di database lokal sampai berhasil disinkronisasi.
Q: Bagaimana jika server Cloud Hub down? A: Toko tetap beroperasi. Hanya fitur yang membutuhkan data real-time dari HO yang terdampak.