Apa itu Apigee?

Halaman ini berlaku untuk Apigee dan Apigee Hybrid.

Lihat dokumentasi Apigee Edge.

Apigee adalah platform untuk mengembangkan dan mengelola API. Dengan fronting layanan menggunakan lapisan proxy, Apigee menyediakan abstraksi atau facade untuk API layanan backend Anda dan menyediakan keamanan, pembatasan kapasitas, kuota, analisis, dan lainnya.

Video: Tonton video singkat ini untuk mengetahui pengantar tentang Pengelolaan API Apigee.

Arsitektur tingkat tinggi

Gambar berikut menunjukkan arsitektur tingkat tinggi Apigee:

Ringkasan tingkat tinggi
  arsitektur Apigee.

Seperti yang ditunjukkan gambar, Apigee terdiri dari komponen utama berikut:

  • Layanan Apigee: API yang Anda gunakan untuk membuat, mengelola, dan men-deploy proxy API Anda.
  • Runtime Apigee: Serangkaian layanan runtime dalam container di cluster Kubernetes yang dikelola Google. Semua traffic API melewati dan diproses oleh layanan ini.

Selain itu, Apigee menggunakan komponen lain, termasuk:

  • Layanan Google Cloud: Menyediakan fungsi pengelolaan identitas, logging, analisis, metrik, dan pengelolaan project.
  • Layanan backend: Digunakan oleh aplikasi Anda untuk memberikan akses runtime ke data untuk proxy API Anda.

Untuk penjelasan yang lebih mendetail, lihat Komponen Apigee.

Berikut adalah gambar yang lebih terperinci yang menunjukkan koneksi antara project Cloud Anda dan layanan Google melalui jaringan peering pribadi:

Diagram
  arsitektur yang menunjukkan koneksi VPC.

Untuk contoh cara menggunakan Apigee, tonton webcast ini tentang cara Walgreens menggunakan API dan Apigee untuk menyediakan ekosistem aplikasi yang kaya di sekitar pencetakan foto, resep, dan layanan lainnya.

Cukup bicara!

Menyiapkan Apigee lalu Buat proxy pertama Anda!  

Versi Apigee

Apigee hadir dalam varian berikut:

  • Apigee: Versi cloud yang dihosting oleh Apigee yang memungkinkan Anda berkonsentrasi pada pembangunan layanan dan menentukan API untuk layanan tersebut. Apigee akan memelihara lingkungan ini.
  • Apigee Hybrid: Versi hybrid yang terdiri dari bidang runtime yang diinstal di infrastruktur lokal atau di penyedia cloud pilihan Anda, dan bidang pengelolaan yang berjalan di cloud Apigee. Dalam model ini, traffic dan data API dibatasi dalam batas yang disetujui perusahaan Anda.

Percepatan digital

Video ini memberi Anda gambaran singkat tentang cara Apigee membantu Anda berkembang menjadi bisnis digital.

Memilih antara pengelolaan layanan dan pengelolaan API

Video ini membantu Anda memahami perbedaan penting antara pengelolaan layanan dan pengelolaan API.

Menyediakan layanan Anda di web

Saat ini, perusahaan ingin membuat layanan backend mereka tersedia di web sehingga layanan ini dapat digunakan oleh aplikasi yang berjalan di perangkat seluler dan desktop. Perusahaan mungkin ingin mengekspos layanan yang memberikan informasi harga dan ketersediaan produk, layanan penjualan dan pemesanan, layanan pelacakan pesanan, dan layanan lain yang diperlukan oleh aplikasi klien.

Perusahaan sering mengekspos layanan sebagai serangkaian endpoint HTTP. Kemudian, developer aplikasi klien membuat permintaan HTTP ke endpoint ini. Bergantung pada endpoint, layanan kemudian dapat menampilkan data, yang diformat sebagai XML atau JSON, kembali ke aplikasi klien.

Aplikasi klien yang menggunakan layanan ini dapat diimplementasikan sebagai aplikasi mandiri untuk perangkat seluler atau tablet, sebagai aplikasi HTML5 yang berjalan di browser, atau sebagai jenis aplikasi lain yang dapat membuat permintaan ke endpoint HTTP dan menggunakan data respons apa pun. Aplikasi ini mungkin dikembangkan dan dirilis oleh perusahaan yang sama yang mengekspos layanan, atau oleh developer aplikasi pihak ketiga yang menggunakan layanan yang tersedia secara publik.

Gambar berikut menunjukkan jenis model ini:

Beberapa jenis aplikasi seperti aplikasi seluler, aplikasi point of sale, partner, dan aplikasi web terhubung ke layanan backend, seperti ESB, SOA, server aplikasi, dan database.

Karena penyedia menyediakan layanannya melalui web, mereka harus memastikan bahwa mereka telah mengambil semua langkah yang diperlukan untuk mengamankan dan melindungi layanan mereka dari akses yang tidak sah. Sebagai penyedia layanan, pertimbangkan:

  • Keamanan: Bagaimana Anda akan mengontrol akses ke layanan Anda untuk mencegah akses yang tidak sah?
  • Kompatibilitas: Apakah layanan Anda akan berfungsi di berbagai platform dan perangkat?
  • Keterukuran: Bagaimana cara memantau layanan Anda untuk memastikan layanan tersebut tersedia?
  • Dan banyak pertimbangan lainnya

Setelah aplikasi klien yang mengakses layanan apa pun dirilis, penyedia layanan kemudian diwajibkan untuk memastikan bahwa layanan tersebut terus berfungsi dari waktu ke waktu saat mereka menambahkan, mengubah, atau menghapus layanan tersebut. Penyedia layanan juga harus memiliki cara untuk terus memberi tahu developer aplikasi tentang perubahan apa pun pada layanan untuk memastikan aplikasi klien tetap disinkronkan dengan layanan tersebut.

Developer aplikasi klien menghadapi tantangan saat mencoba menggunakan layanan dari berbagai penyedia. Saat ini ada banyak teknologi yang tersedia untuk digunakan oleh penyedia layanan dalam mengekspos layanannya. Aplikasi klien yang sama mungkin harus menggunakan satu mekanisme untuk menggunakan layanan dari satu penyedia, dan mekanisme yang berbeda untuk menggunakan layanan dari penyedia yang berbeda. Developer aplikasi bahkan dapat menghadapi situasi di mana mereka harus menggunakan mekanisme yang berbeda untuk menggunakan layanan dari penyedia yang sama.

Menyediakan layanan melalui Apigee

Apigee memungkinkan Anda memberikan akses yang aman ke layanan Anda dengan API yang ditentukan dengan baik dan konsisten di seluruh layanan Anda, terlepas dari implementasi layanan. API yang konsisten:

  • Memudahkan developer aplikasi untuk menggunakan layanan Anda.
  • Memungkinkan Anda mengubah implementasi layanan backend tanpa memengaruhi API publik.
  • Memungkinkan Anda memanfaatkan analisis, portal developer, dan fitur lainnya yang ada di Apigee.

Gambar berikut menunjukkan arsitektur dengan Apigee yang menangani permintaan dari aplikasi klien ke layanan backend Anda:

Apigee berada di antara aplikasi klien dan layanan backend.

Daripada menggunakan layanan Anda secara langsung, developer aplikasi mengakses proxy API yang dibuat di Apigee. Proxy API berfungsi sebagai pemetaan endpoint HTTP yang tersedia secara publik ke layanan backend Anda. Dengan membuat proxy API, Anda memungkinkan Apigee menangani tugas keamanan dan otorisasi yang diperlukan untuk melindungi layanan Anda, serta menganalisis dan memantau layanan tersebut.

Karena developer aplikasi membuat permintaan HTTP ke proxy API, bukan langsung ke layanan Anda, developer tidak perlu mengetahui apa pun tentang penerapan layanan Anda. Yang perlu diketahui developer adalah:

  • URL endpoint proxy API.
  • Parameter kueri, header, atau parameter isi yang diteruskan dalam permintaan.
  • Kredensial autentikasi dan otorisasi yang diperlukan.
  • Format respons, termasuk format data respons, seperti XML atau JSON.

Proxy API mengisolasi developer aplikasi dari layanan backend Anda. Oleh karena itu, Anda bebas mengubah implementasi layanan selama API publik tetap konsisten. Misalnya, Anda dapat mengubah penerapan database, memindahkan layanan ke host baru, atau melakukan perubahan lain pada penerapan layanan. Dengan mempertahankan API frontend yang konsisten, aplikasi klien yang ada akan terus berfungsi terlepas dari perubahan di backend.

Anda dapat menggunakan kebijakan pada proxy API untuk menambahkan fungsi ke layanan tanpa harus membuat perubahan apa pun pada layanan backend. Misalnya, Anda dapat menambahkan kebijakan ke proxy untuk melakukan transformasi dan pemfilteran data, menambahkan keamanan, menjalankan logika bersyarat atau kode kustom, dan melakukan banyak tindakan lainnya. Hal penting yang perlu diingat adalah Anda menerapkan kebijakan di Apigee, bukan di server backend Anda.

Untuk mengetahui informasi selengkapnya, lihat Memahami API dan proxy API.

Membuat produk API

Proxy API adalah endpoint HTTP di Apigee yang digunakan developer untuk mengakses layanan backend Anda. Meskipun memungkinkan, biasanya Anda tidak menyediakan proxy API individual. Sebagai gantinya, Anda mengelompokkan satu atau beberapa proxy API ke dalam produk API.

Produk API adalah paket proxy API yang dikombinasikan dengan paket layanan. Paket layanan tersebut dapat menetapkan batas akses pada proxy API, memberikan keamanan, memungkinkan pemantauan dan analisis, serta menyediakan fitur tambahan. Produk API juga merupakan mekanisme utama yang digunakan Apigee untuk otorisasi dan kontrol akses ke API Anda.

Anda memiliki fleksibilitas yang besar saat membuat produk API. Misalnya, beberapa produk API dapat menggunakan proxy API yang sama. Gambar berikut menunjukkan tiga produk API. Perhatikan bahwa semua produk mengizinkan akses ke proxy API 3, tetapi hanya produk A yang mengizinkan akses ke proxy API 1.

Produk A mengakses proxy 1 dan 3. Produk B mengakses proxy 3.
    Produk C mengakses proxy 2, 3, dan 4.

Anda dapat menetapkan properti yang berbeda pada setiap produk API. Misalnya, Anda dapat menyediakan satu produk API dengan batas akses rendah, seperti 1.000 permintaan per hari, dengan harga murah. Anda kemudian merilis produk API lain yang memberikan akses ke proxy API yang sama, tetapi dengan batas akses yang jauh lebih tinggi, dengan harga yang lebih tinggi. Atau, Anda dapat membuat produk API gratis yang memungkinkan akses hanya baca ke layanan Anda, lalu menjual produk API ke proxy API yang sama yang memungkinkan akses baca/tulis.

Untuk mengetahui informasi selengkapnya, lihat Membuat produk API.

Mengizinkan aplikasi sisi klien mengakses produk API Anda

Saat developer aplikasi memutuskan bahwa mereka ingin mengakses layanan Anda, mereka harus mendaftarkan aplikasi klien mereka dengan produk API Anda terlebih dahulu.

Aplikasi klien
        memerlukan kunci untuk memanggil API yang terkait dengan Produk API.

Setelah mendaftar, developer aplikasi akan menerima kunci API yang kemudian harus disertakan dalam setiap permintaan ke proxy API yang disertakan dalam produk API. Kunci tersebut diautentikasi dan, jika autentikasi berhasil, permintaan diizinkan untuk mengakses layanan backend Anda.

Kapan saja, Anda dapat mencabut kunci sehingga aplikasi klien tidak lagi memiliki akses ke layanan Anda. Atau, Anda dapat menentukan batas waktu pada kunci sehingga developer harus memperbarui kunci setelah waktu tertentu.

Anda memutuskan cara menangani permintaan pendaftaran dari developer untuk mengakses produk API Anda. Dengan menggunakan Layanan Developer Apigee, Anda dapat mengotomatiskan proses pendaftaran; atau Anda dapat menggunakan proses manual untuk mengontrol akses.

Membuat produk API dan menyediakannya untuk developer

  1. Buat satu atau beberapa proxy API yang memetakan URL yang tersedia secara publik ke layanan backend Anda.
  2. Buat produk API yang memaketkan proxy API Anda.
  3. Deploy proxy API dan produk API Anda.
  4. Beri tahu developer Anda bahwa produk API tersedia.

Setelah mengetahui ketersediaan produk API Anda, developer aplikasi akan:

  1. Mendaftarkan aplikasi klien mereka dengan produk API Anda.
  2. Menerima kunci API untuk produk API.
  3. Buat permintaan ke layanan Anda melalui proxy API (yang dipaketkan dalam produk API) dan teruskan kunci API dengan setiap permintaan.

Komponen Apigee

Apigee terdiri dari runtime API, pemantauan dan analisis, serta layanan developer yang bersama-sama menyediakan infrastruktur komprehensif untuk pembuatan, keamanan, pengelolaan, dan operasi API.

Gambar berikut menunjukkan arsitektur tingkat tinggi Apigee:

Arsitektur tingkat tinggi Apigee

Runtime Apigee

Layanan Apigee adalah tentang pembuatan dan penggunaan API, baik Anda membuat proxy API sebagai penyedia layanan atau menggunakan API, SDK, dan layanan praktis lainnya sebagai developer aplikasi.

Runtime API menyediakan alat untuk menambahkan dan mengonfigurasi proxy API, menyiapkan produk API, serta mengelola developer aplikasi dan aplikasi klien. Layanan ini menangani banyak masalah pengelolaan umum dari layanan backend Anda. Saat menambahkan proxy API, Anda dapat menerapkan kebijakan ke proxy API untuk menambahkan keamanan, pembatasan kapasitas, mediasi, caching, dan sebagainya. Anda juga dapat menyesuaikan perilaku proxy API dengan menerapkan skrip kustom, melakukan panggilan ke API dan layanan pihak ketiga, dan sebagainya. Lihat Memahami API dan proxy API untuk mengetahui informasi selengkapnya.

Pemantauan & analisis Apigee

Analisis API Apigee menyediakan alat canggih untuk melihat tren penggunaan API Anda dalam jangka pendek dan jangka panjang. Anda dapat menyegmentasikan audiens menurut developer dan aplikasi teratas, memahami penggunaan menurut metode API untuk mengetahui tempat berinvestasi, dan membuat laporan kustom tentang informasi tingkat bisnis atau operasional.

Saat data melewati Apigee, beberapa jenis informasi default dikumpulkan, termasuk URL, IP, ID pengguna untuk informasi panggilan API, latensi, data error, dan sebagainya. Anda dapat membuat kebijakan untuk menambahkan informasi lain, seperti header, parameter kueri, dan bagian permintaan atau respons yang diekstrak dari XML atau JSON. Informasi ini dikumpulkan secara asinkron dari alur permintaan/respons yang sebenarnya, sehingga tidak memengaruhi performa API.

UI Apigee memungkinkan Anda melihat beberapa metrik dan dimensi di browser, seperti yang ditunjukkan pada gambar berikut:

Dasbor analisis yang menampilkan jumlah error kebijakan dalam bentuk grafik dan tabel.

Namun, Anda juga dapat mengakses dan mengontrol Layanan Analytics melalui antarmuka command line atau melalui RESTful API. Lihat Ringkasan Analisis API untuk mengetahui informasi selengkapnya.

Ekosistem developer Apigee

Apigee menyediakan layanan developer yang memungkinkan Anda:

  • Mengelola komunitas developer aplikasi yang menggunakan layanan Anda.
  • Bekerja sama dengan developer internal dan eksternal serta memformalkan hubungan dengan model keuangan.
  • Aktifkan developer dan buat portal developer. Developer aplikasi terhubung ke portal Anda untuk mengakses dokumentasi API guna mempelajari lebih lanjut produk API yang tersedia secara publik dan mengelola kunci API.

Setiap pelanggan Apigee dapat membuat portal developer mereka sendiri di cloud.

Apigee memungkinkan Anda membuat dua jenis portal: