https://s3-us-west-2.amazonaws.com/secure.notion-static.com/fa263f2f-bd1a-4bff-b7d4-df1e7e76e511/Untitled.png

Pola komunikasi request response bisa dibayangkan seperti saat kita mengirimkan pesan secara personal di whatsapp atau instant messaging lainnya.

Untuk mengirimkan pesan kepada seseorang, pertama-tama kita harus memiliki kontak orang tersebut.

Demikian pula, pada gambar di atas Order Service perlu memiliki URL/IP Address dan Port dari service-service lain.

Setelah Order Service mengirimkan request pada Inventory Service misalnya, maka Inventory Service akan memberikan response balasan pada Order Service.

Agar dua service bisa berkomunikasi satu sama lain, maka kita perlu mendefinisikan protokol komunikasi dan format data yang dipakai.

Protokol komunikasi yang paling umum dipakai adalah protokol HTTP. Protokol ini sudah dikenal luas. Semua web browser juga sudah support protokol ini. Oleh sebab itu, protokol ini biasanya dipakai untuk komunikasi antara service frontend dan backend.

Bicara tentang frontend dan backend, biasanya sebelum sebuah project dimulai, perlu terlebih dahulu didefinisikan API specs. Beberapa penyedia layanan seperti swagger dan apiary juga menyediakan fasilitas mocking (membuat response dummy) sehingga tim frontend bisa mulai bekerja tanpa perlu menunggu backend selesai.