# Microservices (Go) > Arsitektur service, discovery, komunikasi, API gateway, circuit breaker, observability, structured logging, metrics, distributed tracing - 24 pertanyaan wawancara - Senior - [Pertanyaan Wawancara: Go](https://sharpskill.dev/id/technologies/go/pertanyaan-wawancara.md) ## 1. Apa perbedaan utama antara arsitektur monolitik dan arsitektur microservices? **Jawaban** Dalam arsitektur microservices, aplikasi didekomposisi menjadi service-service independen yang dapat dikembangkan, di-deploy, dan diskalakan secara terpisah, berbeda dengan monolith di mana semua kode berada dalam satu proses. Setiap microservice memiliki database sendiri dan berkomunikasi melalui API. Ini memungkinkan skalabilitas, resiliensi, dan fleksibilitas teknologi yang lebih baik, tetapi memperkenalkan kompleksitas operasional yang meningkat. ## 2. Apa peran utama service discovery dalam arsitektur microservices? **Jawaban** service discovery memungkinkan service menemukan satu sama lain secara dinamis tanpa konfigurasi hardcoded. Service mendaftar ke registry (Consul, etcd, Eureka) dengan alamat IP dan port mereka. Client melakukan query ke registry untuk mendapatkan instance yang tersedia. Ini memfasilitasi horizontal scaling, continuous deployment, dan resiliensi saat terjadi kegagalan instance. ## 3. Dalam arsitektur microservices, pattern mana yang mengelola konsistensi data terdistribusi tanpa transaksi ACID? **Jawaban** Pattern Saga mengelola konsistensi data terdistribusi melalui rangkaian transaksi lokal. Setiap service mengeksekusi transaksinya dan mempublikasikan event. Jika sebuah langkah gagal, transaksi kompensasi membatalkan perubahan sebelumnya. Implementasi dapat di-orchestrate (koordinator pusat) atau di-choreograph (event pub/sub). Ini menjamin eventual consistency tanpa distributed lock. ## 21 pertanyaan lagi tersedia - Library Go mana yang umum digunakan untuk mengimplementasikan service discovery dengan Consul? - Apa perbedaan utama antara komunikasi sinkron (REST/gRPC) dan asinkron (messaging) antara microservices? Daftar gratis: https://sharpskill.dev/id/login ## Topik wawancara Go lainnya - [Dasar-Dasar Go](https://sharpskill.dev/id/technologies/go/pertanyaan-wawancara/go-basics.md): 25 pertanyaan, Junior - [Struktur Data Go](https://sharpskill.dev/id/technologies/go/pertanyaan-wawancara/go-data-structures.md): 20 pertanyaan, Junior - [Interface Go](https://sharpskill.dev/id/technologies/go/pertanyaan-wawancara/go-interfaces.md): 18 pertanyaan, Junior - [Penanganan Error](https://sharpskill.dev/id/technologies/go/pertanyaan-wawancara/error-handling.md): 20 pertanyaan, Junior - [Dasar-Dasar Goroutine](https://sharpskill.dev/id/technologies/go/pertanyaan-wawancara/goroutines-basics.md): 20 pertanyaan, Junior - [Channels](https://sharpskill.dev/id/technologies/go/pertanyaan-wawancara/channels.md): 22 pertanyaan, Junior - [Go Modules](https://sharpskill.dev/id/technologies/go/pertanyaan-wawancara/go-modules.md): 18 pertanyaan, Mid-Level - [Server HTTP](https://sharpskill.dev/id/technologies/go/pertanyaan-wawancara/http-server.md): 24 pertanyaan, Mid-Level - [Klien HTTP](https://sharpskill.dev/id/technologies/go/pertanyaan-wawancara/http-client.md): 18 pertanyaan, Mid-Level - [Enkoding JSON](https://sharpskill.dev/id/technologies/go/pertanyaan-wawancara/json-encoding.md): 20 pertanyaan, Mid-Level - [Database/SQL](https://sharpskill.dev/id/technologies/go/pertanyaan-wawancara/database-sql.md): 22 pertanyaan, Mid-Level - [Paket context](https://sharpskill.dev/id/technologies/go/pertanyaan-wawancara/context-package.md): 20 pertanyaan, Mid-Level - [Testing](https://sharpskill.dev/id/technologies/go/pertanyaan-wawancara/testing.md): 22 pertanyaan, Mid-Level - [Pola Concurrency](https://sharpskill.dev/id/technologies/go/pertanyaan-wawancara/concurrency-patterns.md): 24 pertanyaan, Mid-Level - [Primitif Sinkronisasi](https://sharpskill.dev/id/technologies/go/pertanyaan-wawancara/sync-primitives.md): 22 pertanyaan, Mid-Level - [Framework web Go](https://sharpskill.dev/id/technologies/go/pertanyaan-wawancara/go-web-frameworks.md): 20 pertanyaan, Mid-Level - [Desain API REST](https://sharpskill.dev/id/technologies/go/pertanyaan-wawancara/rest-api-design.md): 20 pertanyaan, Mid-Level - [gRPC](https://sharpskill.dev/id/technologies/go/pertanyaan-wawancara/grpc.md): 22 pertanyaan, Mid-Level - [Reflection](https://sharpskill.dev/id/technologies/go/pertanyaan-wawancara/reflection.md): 20 pertanyaan, Senior - [Manajemen Memori](https://sharpskill.dev/id/technologies/go/pertanyaan-wawancara/memory-management.md): 24 pertanyaan, Senior - [Optimasi Performa](https://sharpskill.dev/id/technologies/go/pertanyaan-wawancara/performance-optimization.md): 22 pertanyaan, Senior - [Generics](https://sharpskill.dev/id/technologies/go/pertanyaan-wawancara/generics.md): 20 pertanyaan, Senior - [Go Design Patterns](https://sharpskill.dev/id/technologies/go/pertanyaan-wawancara/design-patterns.md): 24 pertanyaan, Senior - [Keamanan dan Autentikasi](https://sharpskill.dev/id/technologies/go/pertanyaan-wawancara/security-authentication.md): 24 pertanyaan, Senior - [Docker & Containerization](https://sharpskill.dev/id/technologies/go/pertanyaan-wawancara/docker-containerization.md): 20 pertanyaan, Senior - [Kubernetes Basics](https://sharpskill.dev/id/technologies/go/pertanyaan-wawancara/kubernetes-basics.md): 22 pertanyaan, Senior - [Go Tingkat Lanjut](https://sharpskill.dev/id/technologies/go/pertanyaan-wawancara/advanced-go.md): 20 pertanyaan, Senior - [Pengembangan CLI](https://sharpskill.dev/id/technologies/go/pertanyaan-wawancara/cli-development.md): 20 pertanyaan, Senior --- Source: SharpSkill (https://sharpskill.dev), tech interview preparation for your real stack. HTML version of this page: https://sharpskill.dev/id/technologies/go/pertanyaan-wawancara/microservices