HeadlinesBriefing favicon HeadlinesBriefing.com

Dasar-Dasar Jaringan Aplikasi

ByteByteGo •
×

Bayangkan skenario sederhana di mana aplikasi web e-commerce memanggil endpoint API yang mengembalikan informasi tentang pesanan pelanggan. Pada level aplikasi, ini terlihat seperti operasi yang cukup sederhana. Tapi banyak yang terjadi di balik layar.

Pertama, klien melakukan kueri DNS untuk alamat IP yang terhubung ke endpoint API. DNS mungkin mengembalikan alamat load balancer alih-alih alamat server aplikasi tertentu. Sistem operasi kemudian menentukan bagaimana paket harus dikirim ke alamat IP tersebut.

Mungkin memilih untuk mengirimkannya melalui jaringan lokal, penyedia layanan internet (ISP), atau beberapa router lainnya. Tujuan akhirnya adalah paket data mencapai jaringan tujuan. Protokol paling umum yang digunakan untuk ini adalah HTTP.

Namun, sebelum HTTP dapat mengirimkan permintaan, klien biasanya perlu membentuk bentuk koneksi tertentu dengan server tujuan. Dengan HTTPS tradisional, ini berarti menetapkan koneksi TCP. Dalam jenis koneksi ini, klien dan server melakukan handshake dengan bertukar beberapa paket awal sehingga kedua pihak tahu bahwa koneksi telah terbentuk.

Klien dan server kemudian melakukan handshake TLS. Hanya setelah ini permintaan HTTP dapat dikirim dengan aman. Load balancer menerimanya, memilih instance aplikasi yang sehat, dan meneruskan permintaan.

Aplikasi melakukan pekerjaannya dan mengirimkan respons kembali melalui jalur yang sama. Semua ini termasuk dalam ranah jaringan. Karena sifatnya yang ubiquitous, jaringan menjadi disiplin yang sangat penting bagi pengembang untuk dikuasai.