Review

Seperti Inilah “Jeroan” Blibli.com yang Sebenarnya

Walaupun dari sisi jumlah kunjungan Blibli.com bukan yang nomor 1 di Indonesia, bukan berarti pengunjung situsnya sedikit. Kalau merujuk dari SimilarWeb, 3 bulan terakhir ini rata-rata trafik Blibli adalah 11 juta kunjungan perbulannya. Seperti apa jeroan Blibli hingga mampu menangani trafik segitu besar? Mari kita simak.

[Gambar: Trafik Mingguan | Similarweb.com]
Hari Jumat, 8 April 2016 lalu, Blibli mengadakan acara sharing session bertajuk Tech-IT Easy. Acara ini dibawakan oleh Ifnu Bima, Development Manager Blibli.com.

Ifnu sebelumnya sempat bekerja di sebuah bank multinasional di Singapura sebagai software engineer. Bahasa program pilihannya adalah Java. Ia begitu cinta dengan bahasa program buatan Sun Microsystem itu (kini menjadi Oracle), sampai-sampai Ia sempat menyatakan “Kalau Blibli gak pakai Java, saya juga gak bakal gabung sih..” Walaupun dinyatakan dengan nada setengah bercanda dan setengah serius.

Mengapa Java?

Tadinya saya berharap mendapatkan cerita “drama” bagaimana Blibli akhirnya menentukan Java sebagai basis pengembangan hampir keseluruhan sistemnya. Ternyata tidak dramatis sih. Ifnu mengatakan hal ini sudah diputuskan sebelum ia bergabung di Blibli. Pada dasarnya Blibli masih berada di dalam grup korporasi Djarum (melalui GDP Venture), jadi pemilihan platform pun masih diputuskan di level korporasi.

Arsitektur

Situs e-commerce yang didirikan pada 2010 ini pada saat awal dibangun masih menggunakan struktur yang sederhana dan berasitektur monolitik. Tapi, di tahun 2012, mesin Blibli sudah dipecah menjadi 3 bagian services:

  • Store Front: Pada dasarnya inilah bagian yang dilihat oleh pengunjung Blibli.com
  • Merchant: Sistem yang mengurusi merchant (penjual di Blibli), baik untuk unggah foto produk, informasi produk yang dijual, dll.
  • Back Office: Bagian sistem yang menangani penjualan, logistik sampai urusan transaksi keuangan.

Salah satu kekurangan dari arsitektur monolitik adalah ketika ada beban proses yang sangat berat di salah satu bagian, (misal di bagian pembayaran) maka keseluruhan sistem pun akan ikut menjadi sangat lambat. Ini sangat mengganggu kestabilan sistem Blibli, yang ujung-ujungnya tentu membuat jumlah transaksi menurun.

Ifnu dan timnya tentunya bertanggung jawab untuk mengatasi hal ini. Mereka akhirnya memutuskan untuk mengubah arsitektur Blibli menjadi microservices. Semua beban proses tadi dipecah lagi menjadi service-service kecil. Jadi ketika terjadi proses yang sangat berat di salah bagian, bagian yang lain masih tetap bisa berfungsi normal. Sebagai contoh, mereka yang sedang browsing-browsing saja, tetap bisa “menggalau” melihat-lihat produk di Blibli walaupun sebenarnya sistem pembayaran Blibli sedang bermasalah.


Jangan lupa ikuti kami di Twitter untuk mendapatkan update terbaru dari @LabanaID