Komunikasi sinkron menghalang pemanggil sehingga respons tiba; komunikasi asinkron menghantar mesej dan terus tanpa menunggu. Setiap satu membuat pertukaran yang berbeza dalam gandingan, latensi, dan daya tahan.
Komunikasi sinkron menghalang pemanggil sehingga respons tiba; komunikasi asinkron menghantar mesej dan terus tanpa menunggu. Setiap satu membuat pertukaran yang berbeza dalam gandingan, latensi, dan daya tahan.
| Aspek | Sinkron (REST/gRPC) | Asinkron (messaging) |
|---|
| Pemanggil menunggu? | Ya | Tidak |
| Gandingan temporal | Ketat | Longgar |
| Ketahanan terhadap gangguan | Rendah | Tinggi (broker menyimpan) |
| Konsistensi | Segera | Akhirnya |
| Kompleksitas | Lebih rendah | Lebih tinggi |
| Kebolehdebugan | Lebih mudah (linear) | Lebih sukar (aliran) |
SYNC: Caller ──request──▶ Service
Caller ◀─response── Service (blocked the whole time)
ASYNC: Caller ──message──▶ [ Queue ] ──▶ Service
Caller continues immediately; Service handles it later
Asinkron menyembunyikan kegagalan — mesej yang hilang atau beracun boleh secara senyap memecahkan aliran kerja. Anda memerlukan baris surat mati dan pemantauan.
Pilihan secara langsung mengawal bagaimana kegagalan menyebar: panggilan sinkron gagal dengan cepat dan terlihat, mesej asinkron menceraiberaikan tetapi menangguhkan masalah kepada pengguna.
Mencampurkan dengan baik — sinkron di tepi, asinkron untuk aliran kerja — adalah kemahiran teras dalam membina perkhidmatan mikro yang tahan banting.