Apa itu Azure API Management?

Selesai

Mari kita mulai dengan gambaran umum Azure API Management dan fitur intinya. Gambaran umum ini akan membantu Anda memutuskan apakah Azure API Management mungkin merupakan solusi yang cocok untuk mengurangi kompleksitas API perusahaan Anda.

Apa itu manajemen siklus hidup API?

Manajemen siklus hidup API adalah proses pengelolaan API sepanjang masa pakainya—mulai dari desain dan pembuatannya hingga keusangan dan penghentiannya. Untuk keperluan modul ini, kami akan mengambil setelah API Anda dirancang, dikodekan, dan disebarkan. Mari kita berkonsentrasi pada sisa tugas manajemen siklus hidup API, yang meliputi:

  • Menyediakan dokumentasi API, pengujian, dan sampel kode.
  • Pengguna onboarding dan off-boarding.
  • Mengelola langganan API dan distribusi kunci langganan.
  • Menerapkan revisi API dengan cara yang terkendali dan aman.
  • Mengelola beberapa versi API.
  • Menerapkan kontrol akses API, seperti batas autentikasi dan laju panggilan.
  • Menyediakan pelaporan API untuk penggunaan, kesalahan, dan sebagainya.
  • Mengelola analitik untuk perusahaan Anda dan untuk pengembang yang menggunakan API.

Definisi Azure API Management

Azure API Management adalah layanan cloud yang memberi Anda platform untuk menerbitkan, mengamankan, memelihara, dan menganalisis semua API perusahaan Anda. Azure API Management menyelesaikan tugas-tugas ini dengan menawarkan tiga komponen utama:

  • Gateway
  • Antarmuka administrasi
  • Portal pengembang

The main components of Azure API Management include the administration interface, gateway, and developer portal.

Penting

Azure API Management tidak meng-hosting API Anda yang sebenarnya; API Anda tetap berada di tempat awalnya disebarkan. Sebaliknya, Azure API Management bertindak sebagai semacam fasad atau "front door" untuk API Anda. Dengan cara ini, Azure API Management memisahkan API Anda dengan memungkinkan Anda mengatur kebijakan API dan opsi manajemen lainnya di Azure, sambil membiarkan API backend yang disebarkan tidak tersentuh.

Gateway

Gateway Azure API Management adalah titik akhir Azure yang menerima semua panggilan dari semua API Anda. Gateway:

  • Memverifikasi kunci langganan API dan informasi masuk lainnya.
  • Memberlakukan kuota penggunaan dan batas tarif Anda.
  • Mengubah API sesuai kebutuhan untuk kompatibilitas backend.
  • Merutekan setiap panggilan ke server backend yang sesuai.
  • Menembolok respons backend.
  • Mengumpulkan metadata panggilan untuk beban kerja analitik.

Antarmuka administrasi

Antarmuka administrasi Azure API Management adalah sekumpulan halaman dan alat portal Azure yang memungkinkan Anda mengelola layanan dan API Anda. Selain provisi, penskalaan, dan pemantauan layanan, Anda menggunakan antarmuka administratif untuk:

  • Menentukan atau mengimpor spesifikasi API
  • Menerapkan kebijakan penggunaan seperti kuota dan batas tarif
  • Menetapkan kebijakan keamanan
  • Mengelola pengguna
  • Memaketkan API ke dalam produk.
  • Mendefinisikan transformasi API
  • Mengelola revisi dan versi API
  • Menjalankan analitik pada metadata API Anda

Portal pengembang

Portal pengembang Azure API Management adalah situs web yang dapat disesuaikan sepenuhnya yang memungkinkan pengembang berinteraksi dengan API Anda melalui:

  • Meninjau dokumentasi untuk setiap API.
  • Mencoba API dengan menggunakan konsol interaktif.
  • Meninjau sampel kode dalam bahasa pemrograman yang berbeda.
  • Berlangganan API dan mendapatkan kunci langganan API.
  • Menjalankan analitik pada penggunaan pengembang.

Tingkat Azure API Management

Azure API Management menyediakan beberapa tingkat layanan, masing-masing menawarkan serangkaian fitur, kapasitas, dan harga yang berbeda. Tabel berikut mencantumkan tingkatan secara berurutan dari harga terendah hingga tertinggi dan membandingkan beberapa kemampuan utama.

Kriteria Consumption Pengembang Dasar Standard Premium
Dirancang untuk Penggunaan ringan Evaluasi, pengujian, dan penggunaan nonproduksi lainnya Penggunaan produksi tingkat pemula Penggunaan produksi volume sedang Penggunaan volume tinggi atau produksi perusahaan
Cache Hanya eksternal 10 megabytes (MB) 50 MB 1 gigabyte (GB) 5 GB
Service-level agreement (SLA) 99,95% Tidak ada 99,95% 99,95% 99,99%
Portal pengembang Tidak Ya Ya Ya Ya
Analitik bawaan Tidak Ya Ya Ya Ya
Throughput (perkiraan permintaan/detik) T/A 500 1,000 2.500 4.000

Catatan

Harga untuk tingkat Konsumsi adalah per panggilan API, di mana jutaan panggilan pertama gratis, dan sisanya kemudian ditagih dengan tarif tetap per 10.000 panggilan. Harga untuk semua tingkatan lainnya adalah per jam.

Menerapkan kebijakan ke permintaan dan respons API

Salah satu masalah terbesar memiliki beberapa API yang dipublikasikan adalah bahwa setiap API memerlukan serangkaian kebijakan terpisah. Di sini,kebijakan adalah pengaturan atau tindakan yang mengontrol perilaku API. Misalnya, jika Anda ingin memberlakukan batas tarif (jumlah maksimum panggilan API yang diizinkan dari satu sumber dalam periode waktu tertentu) Anda akan menyertakan batas tersebut sebagai bagian dari kebijakan untuk API. Batas tarif hanyalah salah satu contoh, tetapi ada banyak kebijakan yang dapat Anda terapkan. Kalikan dengan beberapa API yang berbeda dan Anda memiliki mimpi buruk manajemen.

Azure API Management memecahkan masalah kebijakan API dengan memungkinkan Anda menetapkan kebijakan untuk semua API Anda di satu tempat, yaitu antarmuka administrasi Azure API Management. Dengan Azure API Management, Anda dapat mengatur kebijakan dalam banyak kategori. Daftar parsial meliputi:

  • Pembatasan akses. Kebijakan ini menentukan kapan permintaan API diizinkan melalui gateway. Misalnya, terapkan batas tarif dan kuota penggunaan, filter IP pemanggil, dan periksa JSON Web Token (JWT) yang valid.
  • Autentikasi. Autentikasi panggilan API, misalnya, dengan menggunakan autentikasi Dasar, sertifikat klien, atau identitas terkelola.
  • Penembolokan. Tingkatkan performa API dengan menyimpan dan mengambil respons di cache.
  • Validasi. Validasi panggilan API dengan membandingkan parameter tertentu dengan apa yang ada dalam spesifikasi API Anda. Misalnya, validasi isi permintaan atau respons, parameter header permintaan, dan header respons.

Gabungkan kebijakan Anda secara fleksibel dalam definisi kebijakan, yang merupakan dokumen XML yang terdiri dari serangkaian pernyataan, yang masing-masing mewakili kebijakan dan parameternya. Definisi kebijakan memungkinkan Anda mengonfigurasi kebijakan terpisah pada berbagai tahap alur respons permintaan API:

A consumer's API request enters the Azure API Management gateway where it passes through inbound policies before being sent to the backend server. The API response then passes through the gateway's outbound policies before being sent to the originating API consumer.