[NEWS] 🐘 Upload Jutaan Data Sekaligus Tanpa Macet? Ini Rahasia Arsitektur “Triton” Milik Flipkart! 📦

Bayangkan menjadi seller di e-commerce yang harus mengubah harga 1 juta produk sekaligus lewat upload satu file CSV. Kalau sistemnya lemot, bisnis bisa rugi.

Flipkart Engineering baru saja membongkar dapur pacu Triton, platform terpusat mereka yang menangani operasi “Feed Processing” skala raksasa ini.

Ini bedahan arsitekturnya:

1. ⚠️ Problem Statement (Masalah)

📉 Siloed Solutions: Dulu, setiap tim (Order, Inventory, Catalog) membangun sistem pemrosesan file mereka sendiri-sendiri. Akibatnya, banyak kode duplikat, standar yang beda-beda, dan maintenance yang memusingkan.

⏳ Scale Pressure: User menuntut upload file berisi ratusan ribu baris bisa diproses cepat, tervalidasi per baris, dan ada laporan status yang real-time. Sistem lama sering choke (tersedak) saat traffic puncak.

2. 🛠️ Metodologi & Arsitektur Solusi

Triton dibangun sebagai platform terpusat yang memisahkan beban kerja berat dengan cerdas:

🏗️ Decoupled Architecture: Menggunakan Apache Pulsar sebagai tulang punggung pesan. Ini memisahkan fase Parsing (berat di I/O baca file) dengan fase Processing (berat di komputasi logika bisnis). Jadi, satu fase macet tidak mematikan fase lainnya.

⚡ High-Throughput Workers: Untuk memanggil ribuan API eksternal secara paralel, mereka tidak menggunakan thread biasa. Mereka menggunakan Vert.x yang bersifat non-blocking. Ini memungkinkan satu server menangani ribuan request bersamaan tanpa kehabisan memori.

🧩 Coordinator-Master-Worker Pattern:

– Coordinator: Otak pusat yang menerima request.

– Master: Memecah file raksasa menjadi potongan kecil (chunks).

– Worker: Pasukan semut yang mengerjakan potongan-potongan tersebut secara independen.

3. 📈 Findings & Fitur Unggulan

🛡️ Reliability at Scale: Dengan arsitektur ini, Triton bisa menangani jutaan baris data tanpa downtime. Jika satu worker mati, chunk tugasnya otomatis diambil alih worker lain karena sifatnya stateless.

🎛️ Priority Management: Berkat Apache Pulsar, mereka bisa mengatur “Jalur Prioritas”. Upload data harga untuk promo Flash Sale bisa didahulukan dibanding update deskripsi produk biasa, memastikan bisnis kritis tetap jalan.

4. 💡 Key Takeaways

🏭 Platform over Product: Jangan biarkan setiap tim bikin roda sendiri. Sentralisasi fungsi umum (seperti bulk processing) ke dalam satu platform yang tangguh menghemat sumber daya engineering jangka panjang.

🌊 Async is King: Untuk operasi berat, jangan paksa synchronous. Pecah tugas, masukkan antrian (queue), dan kerjakan secara asinkron agar user experience tetap responsif.

💬 Kalian tim mana nih buat handle job berat? Tim RabbitMQ, Kafka, atau Pulsar? Diskusi di bawah yuk! 👇

🔗 Baca Arsitektur Lengkapnya:
https://blog.flipkart.tech/triton-scaling-bulk-operations-with-a-feed-processing-platform-94c750efa07c

#SystemDesign #FlipkartEngineering #DataEngineering #ApachePulsar #DistributedSystems #SoftwareArchitecture #Scalability #TechTips #BulkProcessing

Leave a Comment