Posts

Showing posts from 2025

Memahami Fault Tolerance di Quarkus MicroProfile

Image
Dalam pengembangan aplikasi berbasis microservices, kegagalan adalah hal yang pasti terjadi entah itu layanan yang lambat, API eksternal yang tidak stabil, atau koneksi jaringan yang tiba-tiba putus.  Nah, Quarkus punya solusi bawaan untuk menghadapi hal ini melalui MicroProfile Fault Tolerance , yang diimplementasikan oleh SmallRye Fault Tolerance . Dengan fitur ini, Quarkus membantu aplikasi Anda tetap stabil, tangguh, dan tidak langsung crash saat terjadi gangguan. Apa Itu MicroProfile Fault Tolerance? MicroProfile Fault Tolerance adalah salah satu spesifikasi di dalam Eclipse MicroProfile yang berfokus pada ketahanan layanan (service resilience) . Tujuannya adalah memberikan mekanisme otomatis agar aplikasi bisa: Mendeteksi dan menangani kegagalan sementara (transient failure) Mencegah efek domino dari layanan yang rusak Memberikan respon alternatif (fallback) ketika sistem utama gagal Di Quarkus, semua ini sudah diurus oleh SmallRye Fault Tolerance , tanpa per...

Dari Spring Boot ke Quarkus: Memahami JAX-RS, MicroProfile, dan SmallRye

Image
Bagi banyak developer Java, Spring Boot adalah pilihan utama untuk membuat aplikasi REST API . Annotation seperti @RestController , @GetMapping , atau @PostMapping sudah menjadi makanan sehari-hari. Namun, saat mulai mengenal Quarkus , sering muncul pertanyaan: “Kalau di Quarkus bikin REST API pakai apa?” “Apa itu MicroProfile dan SmallRye, dan bagaimana perannya di Quarkus?” Artikel ini mencoba memberi penjelasan sederhana bagi pemula, khususnya mereka yang berasal dari dunia Spring Boot. 1. REST API di Quarkus: Dasarnya JAX-RS Di Quarkus, pembuatan REST API menggunakan standar Jakarta RESTful Web Services (JAX-RS) , bukan Spring MVC. Contoh endpoint sederhana di Quarkus: import jakarta.ws.rs.GET; import jakarta.ws.rs.Path; import jakarta.ws.rs.Produces; import jakarta.ws.rs.core.MediaType; @Path("/hello") public class HelloResource {     @GET     @Produces(MediaType.TEXT_PLAIN)     public String hello() {         return "Hel...

Perbandingan Apache HTTP Client, Java HTTP Client, dan JAX-RS Client dalam Pemrograman Java

Image
Dalam dunia pemrograman Java, komunikasi melalui protokol HTTP menjadi bagian penting untuk membangun aplikasi web, mikroservis, dan integrasi API. Ada beberapa alat atau library yang populer untuk menangani permintaan HTTP, yaitu Apache HTTP Client, Java HTTP Client (bawaan Java), dan JAX-RS Client (terutama dalam framework seperti Quarkus). Ketiga alat ini menawarkan pendekatan yang berbeda dalam menangani komunikasi HTTP, mulai dari yang rendah level hingga yang deklaratif dan reaktif. Artikel ini akan membahas masing-masing client secara mendalam, termasuk fitur utama, cara penggunaan, serta perbandingan di antara ketiganya. Penjelasan ini bertujuan untuk membantu pengembang Java memilih alat yang tepat sesuai kebutuhan proyek, terutama dalam konteks framework modern seperti Quarkus. Pengenalan Singkat Apache HTTP Client : Library open-source dari Apache Software Foundation yang kaya fitur untuk komunikasi HTTP/HTTPS. Ini adalah pilihan klasik untuk aplikasi enter...