PR 1 Microservices
Tugas 1 Microservices contoh nyata system yang menerapkan mikroservices pada sistem atau aplikasi
Nama : SHALU SAFITRI ARZUF
Nim : 2301093008
Kelas : MI 3B
1. Alibaba
Alibaba merupakan salah satu perusahaan e-commerce terbesar di dunia. Dengan skala transaksi yang sangat besar, terutama saat event belanja tahunan 11.11 Global Shopping Festival, sistem mereka membutuhkan arsitektur yang mampu menangani jutaan transaksi per detik.
Awalnya Alibaba menggunakan pendekatan monolitik, namun hal ini membuat sistem sulit untuk diskalakan. Oleh karena itu, mereka beralih ke microservices architecture.
Arsitektur yang digunakan:
- Sistem dipecah menjadi layanan-layanan kecil seperti:
- Order Service (pengelolaan pesanan)
- Payment Service (Alipay)
- Inventory Service (stok barang)
- Recommendation Service (rekomendasi produk)
- Komunikasi antar layanan menggunakan Apache Dubbo, yaitu framework RPC (Remote Procedure Call) yang dikembangkan oleh Alibaba sendiri.
- Seluruh layanan dijalankan di atas Alibaba Cloud dengan dukungan Docker dan Kubernetes untuk melakukan deployment dan scaling otomatis.
Keuntungan:
Dengan microservices, Alibaba bisa menjaga sistem tetap
stabil meskipun menghadapi traffic yang sangat tinggi. Setiap layanan dapat
diskalakan secara mandiri sehingga tidak ada satu titik kegagalan (single point
of failure).
2. X (Twitter)
Twitter, yang sekarang dikenal sebagai X, pada awalnya menggunakan monolith berbasis Ruby on Rails. Namun, dengan semakin banyaknya pengguna dan jutaan tweet yang diposting setiap menit, arsitektur tersebut tidak lagi mampu menampung beban yang besar.
Untuk mengatasi masalah tersebut, Twitter memigrasikan sistem mereka ke microservices.
Arsitektur yang digunakan:
- Layanan dipecah ke dalam beberapa microservices, seperti:
- Tweet Service (mengelola postingan)
- Timeline Service (menampilkan tweet sesuai urutan)
- User Service (profil pengguna)
- Notification Service (notifikasi real-time)
- Mereka menggunakan Finagle (library RPC buatan Twitter) dan Thrift sebagai protokol komunikasi antar layanan.
- Proses deployment dilakukan menggunakan container (Docker) yang dikelola dengan Kubernetes agar lebih mudah diatur skalanya.
Keuntungan:
Dengan microservices, Twitter bisa mencapai tingkat
scalability dan fault tolerance yang lebih tinggi. Error di satu layanan tidak
akan memengaruhi layanan lain, sehingga sistem tetap bisa berjalan meskipun ada
masalah di salah satu bagian.
3. Spotify
Spotify adalah aplikasi streaming musik populer dengan jutaan pengguna aktif di seluruh dunia. Sistem Spotify membutuhkan arsitektur yang fleksibel dan bisa diskalakan karena harus menangani berbagai fitur, mulai dari pemutaran musik, pencarian lagu, playlist, rekomendasi, hingga layanan iklan.
Arsitektur yang digunakan:
- Spotify membagi sistem mereka ke dalam microservices, di antaranya:
- Streaming Service (memutar lagu)
- Search Service (pencarian musik)
- Playlist Service (mengelola playlist pengguna)
- Recommendation Service (rekomendasi musik)
- Ads Service (iklan audio dan visual)
- Komunikasi antar layanan menggunakan pendekatan event-driven architecture dengan bantuan Apache Kafka sebagai message broker.
- Semua layanan dijalankan dalam container (Docker) dan dikelola dengan Kubernetes agar dapat diskalakan sesuai kebutuhan.
Keuntungan:
Microservices membuat Spotify lebih mudah melakukan scaling pada layanan
tertentu. Misalnya, streaming service yang membutuhkan kapasitas lebih besar
dibandingkan layanan lain dapat diperluas tanpa mengganggu sistem yang lain.
Komentar
Posting Komentar