Membuat alur bersama yang dapat digunakan kembali

Halaman ini berlaku untuk Apigee dan Apigee Hybrid.

Lihat dokumentasi Apigee Edge.

Gabungkan kebijakan dan resource ke dalam alur bersama yang dapat Anda gunakan dari beberapa proxy API, dan bahkan dari alur bersama lainnya. Meskipun seperti proxy, alur bersama tidak memiliki endpoint. Alur ini hanya dapat digunakan dari proxy API atau alur bersama yang berada dalam organisasi yang sama dengan alur bersama itu sendiri.

Dengan mengambil fungsionalitas di satu tempat yang berguna di banyak tempat, alur bersama membantu Anda memastikan konsistensi, mempersingkat waktu pengembangan, dan mengelola kode dengan lebih mudah.

Video berikut menunjukkan cara membuat dan men-debug flow bersama di UI Apigee.

Anda dapat memanggil alur bersama menggunakan kebijakan FlowCallout. Selain itu, dengan melampirkan flow bersama ke flow hook, Anda dapat membuat flow bersama dieksekusi sebelum proxy atau permintaan target, atau setelah respons proxy atau target.

Untuk referensi tentang kebijakan FlowCallout, lihat kebijakan FlowCallout. Untuk mengetahui informasi selengkapnya tentang flow hook, lihat Melampirkan flow bersama menggunakan flow hook.

Misalnya, bayangkan Anda memiliki area fungsi yang digunakan di beberapa tempat atau harus distandardisasi di seluruh API di organisasi Anda. Anda dapat memiliki alur bersama untuk setiap kategori, termasuk:

  • Keamanan, dengan kode otorisasi yang menggunakan verifikasi kunci API dan OAuth, serta kode perlindungan ancaman.
  • Logging, untuk membuat pesan error standar.
  • Mediasi, untuk transformasi antara format pesan XML dan JSON.

Dalam ilustrasi berikut, dua proxy API memanggil (dengan kebijakan FlowCallout) ke alur bersama untuk mengautentikasi permintaan pengguna yang masuk. AuthSharedFlow telah di-deploy secara terpisah untuk organisasi sebelum proxy sehingga tersedia untuk mendukung permintaan dari proxy. Alur bersama dapat dikembangkan dan dikelola oleh tim yang bertanggung jawab atas kebijakan perusahaan yang luas, kemudian digunakan secara proxy oleh tim lini bisnis yang membangun aplikasi yang lebih khusus.

Diagram alir menunjukkan kebijakan POST /foodcarts terhadap kebijakan POST /menu ke AuthSharedFlow.
          Teks info:
          a) Beberapa proxy API menggunakan alur bersama melalui FlowCallouts.
          b)Kebijakan FlowCallout melakukan panggilan dari proxy API ke alur bersama.
          c) Paket alur bersama berisi logika yang dapat digunakan kembali sebagai kebijakan dan resource.

Mengembangkan alur bersama

Saat mengembangkan alur bersama, Anda harus selalu mengujinya dengan panggilan yang dikirim ke proxy API. Dengan kata lain, Anda tidak dapat mengirim permintaan langsung ke alur bersama seperti yang dilakukan di proxy API. Sebagai gantinya, Anda mengirim permintaan ke proxy API yang, pada akhirnya, memanggil alur bersama.

Berikut adalah langkah-langkah tingkat tinggi untuk mengembangkan alur bersama:

  1. Cari tahu seperti apa serangkaian fitur bersama yang seharusnya.

    Misalnya, Anda mungkin ingin menggabungkan fitur pengelolaan traffic, termasuk menyembunyikan lonjakan traffic. Dengan demikian, Anda dapat mengelola konfigurasinya di luar alur kerja yang mengimplementasikan logika lini bisnis.

  2. Kembangkan alur bersama dengan mengimplementasikan kebijakan dan resource pendukung, seperti yang Anda lakukan saat mengembangkan proxy API.

    Alur bersama adalah urutan langkah bersyarat. Jadi, mengembangkannya sama seperti mengembangkan proxy API. Anda dapat menyertakan kebijakan dan resource yang mungkin Anda sertakan dalam proxy.

    Misalnya, sebagai bagian dari dukungan pengelolaan traffic, Anda dapat menerapkan kebijakan Penahanan Spike untuk hanya mengizinkan 30 permintaan per detik, seperti pada contoh berikut:

    <SpikeArrest async="false" continueOnError="false" enabled="true" name="Spike-Arrest">
        <DisplayName>Spike Arrest</DisplayName>
        <Properties/>
        <Identifier ref="request.header.some-header-name"/>
        <MessageWeight ref="request.header.weight"/>
        <Rate>30ps</Rate>
    </SpikeArrest>

    Kemudian, ke alur bersama untuk pengelolaan traffic, Anda dapat melampirkan kebijakan Penangkapan Spike sebagai langkah. Kebijakan ini akan dijalankan untuk setiap proxy API yang memanggil alur bersama.

    <SharedFlow name="default">
        <Step>
            <Name>Spike-Arrest</Name>
        </Step>
    </SharedFlow>

    Untuk informasi tentang cara memulai alur bersama di konsol pengelolaan, lihat Membuat alur bersama di UI Apigee.

    Seperti proxy API, Anda dapat mengimpor file zip yang berisi artefak sumber alur bersama menggunakan Buat flow API bersama. Berikut adalah ilustrasi cara mengimpor alur bersama dengan Apigee API:

    curl "https://apigee.googleapis.com/v1/organizations/$ORG/sharedflows?action=import&sharedFlowID=mySharedFlow" \
      -X POST \
      -F "file=@sharedflow.zip" \
      -H "Authorization: Bearer $TOKEN"

    Tempat $TOKEN ditetapkan ke token akses OAuth 2.0, seperti yang dijelaskan dalam Mendapatkan token akses OAuth 2.0. Untuk mengetahui informasi tentang opsi curl yang digunakan dalam contoh ini, lihat Menggunakan curl. Untuk deskripsi variabel lingkungan yang digunakan, lihat Menetapkan variabel lingkungan untuk permintaan Apigee API.

  3. Deploy alur bersama ke lingkungan sebelum men-deploy proxy atau alur bersama yang akan memakainya. Anda men-deploy alur bersama dengan cara yang sama seperti men-deploy proxy API. (Untuk mengetahui selengkapnya, lihat Ringkasan deployment.)

    Alur bersama harus berada di organisasi yang sama dan di-deploy ke lingkungan yang sama dengan proxy API dan alur bersama lainnya yang memakainya. Dengan men-deploy alur bersama sebelum proxy memungkinkan Anda menyelesaikan dependensi proxy pada alur bersama pada waktu deployment.

    Anda dapat men-deploy alur bersama dengan panggilan API Apigee seperti berikut:

    curl https://apigee.googleapis.com/v1/organizations/$ORG/environments/$ENV/sharedflows/$SHAREDFLOW/revisions/$REV/deployments \
      -X POST \
      -H "Authorization: Bearer $TOKEN"

    Serupa dengan proxy API, semua deployment alur bersama yang berhasil ke Apigee adalah deployment tanpa periode nonaktif.

  4. Kembangkan proxy API yang menggunakan agar dapat memanggil alur bersama sebagai bagian dari alurnya sendiri.

    Dari proxy API, Anda memanggil alur bersama dengan kebijakan FlowCallout. (Anda juga dapat memasang flow bersama ke proxy menggunakan flow hook.)

    Untuk menggunakan alur bersama, Anda menambahkan kebijakan FlowCallout ke proxy atau alur bersama yang akan menggunakannya. Seperti kebijakan Pemanggilan Layanan, yang digunakan untuk memanggil layanan lain, FlowCallout memanggil alur bersama. Proxy API yang menggunakan harus di-deploy setelah alur bersama dan ke lingkungan yang sama dengan alur bersama. Alur bersama harus ada saat Anda ingin menguji panggilan ke alur tersebut menggunakan kebijakan FlowCallout.

    Dalam kode berikut, kebijakan FlowCallout memanggil alur bersama yang disebut traffic-management-shared.

    <FlowCallout async="false" continueOnError="false" enabled="true" name="Traffic-Management-Flow-Callout">
        <DisplayName>Traffic Management FlowCallout</DisplayName>
        <Properties/>
        <SharedFlowBundle>traffic-management-shared</SharedFlowBundle>
    </FlowCallout>

    Untuk mengetahui informasi selengkapnya, lihat Memanggil flow bersama dari proxy API atau alur bersama

  5. Deploy proxy API yang menggunakan untuk mulai menggunakan alur bersama. (Untuk informasi selengkapnya tentang deployment secara umum, lihat Ringkasan deployment.)
  6. Kembangkan secara iteratif dengan melakukan pelacakan, seperti yang Anda lakukan dengan proxy API.

    Seperti proxy API, Anda mengembangkan flow bersama dengan memanggil dan melacak secara berulang hingga Anda memiliki logika yang sesuai dengan keinginan Anda. Dalam hal ini, karena alur bersama tidak berjalan sendiri, Anda memanggil endpoint proxy dan men-debug proxy tersebut.

    Berikut langkah-langkahnya:

    1. Pastikan alur bersama dan proxy API yang memanggilnya dengan kebijakan FlowCallout berada di organisasi yang sama dan di-deploy ke lingkungan yang sama.
    2. Pada tab Trace proxy API, mulai lacak proxy API.
    3. Kirim permintaan ke endpoint proxy di proxy API. Alur dari endpoint harus menyertakan kebijakan FlowCallout yang memanggil alur bersama.
    4. Pada tab Trace, periksa alur dari proxy API ke alur bersama.

      Perhatikan bahwa dalam pelacakan, alur bersama direpresentasikan sebagai serangkaian langkah atau kebijakan yang dikurung dalam kotak abu-abu. Ikon yang mewakili kebijakan FlowCallout mendahului alur bersama. (Untuk mengetahui informasi selengkapnya tentang pelacakan, lihat Alat debug.)

      Peta transaksi.  Teks info:
            a) Kebijakan FlowCallout memanggil alur bersama.
            b) Alur bersama mencakup kebijakan SpikeArrest dan kebijakan FlowCallout.
            Kebijakan FlowCallout memanggil alur bersama lainnya dengan kebijakan VerifyAPIKey.

Membuat flow bersama di UI Apigee

Saat menggunakan Apigee API untuk membuat alur bersama, Anda dapat membuatnya dari awal atau dengan mengimpor sumber alur yang ada sebagai file zip paket alur.

Akses halaman Alur Bersama, seperti yang dijelaskan di bawah ini. Di halaman Alur Bersama, Anda dapat melihat daftar alur bersama di organisasi, dan mengedit atau menghapus alur dalam daftar.

Untuk membuat flow bersama di UI Apigee:

  1. Login ke UI Apigee.
  2. Pilih organisasi yang berisi alur bersama Anda. Lihat Beralih antar-organisasi.

    Alur bersama akan tersedia untuk semua proxy API dan alur bersama yang di-deploy ke lingkungan dari organisasi ini. Data tersebut tidak akan tersedia dari luar organisasi ini.

  3. Pilih Develop > Shared Flows di menu navigasi sebelah kiri.
  4. Buat atau upload alur bersama:
    • Klik Buat Baru untuk membuat alur baru dari awal. Anda akan dapat mengonfigurasi kebijakan dan resource sebagai langkah dalam alur.

      Dialog Membuat Alur Bersama akan ditampilkan.

      1. Masukkan nama alur yang dibagikan.

        Ini akan menjadi nama yang digunakan oleh proxy API dan alur bersama lainnya untuk mereferensikan alur bersama ini. Nama harus deskriptif bagi developer yang memakai alur tersebut.

      2. Masukkan deskripsi untuk memberikan informasi selengkapnya tentang fungsi alur.
      3. Klik Create.

        Alur bersama dibuat.

      4. Selanjutnya, Anda dapat mengembangkan fitur alur bersama dan men-deploy-nya ke lingkungan yang diinginkan.
    • Klik Upload paket untuk membuat alur bersama dari sumber yang ada dengan mengupload paket alur.

      Paket flow bersama berisi artefak sumber dari flow bersama. Misalnya, jika Anda mendownload flow bersama dari UI Apigee, Anda akan memiliki file zip dengan paket flow.

      Dialog Membuat Alur Bersama akan ditampilkan.

      1. Pilih file zip yang berisi artefak yang Anda inginkan dalam flow baru.
      2. Klik Buka.
      3. Masukkan nama untuk alur bersama yang diimpor.

        Ini akan menjadi nama yang digunakan oleh proxy API dan alur bersama lainnya untuk mereferensikan alur bersama ini. Nama harus deskriptif bagi developer yang memakai alurnya.

      4. Klik Create.

        Alur bersama dibuat dari paket.

      5. Selanjutnya, Anda dapat mengembangkan fitur alur bersama dan men-deploy-nya ke lingkungan yang diinginkan.

Memanggil flow bersama dari proxy API atau flow bersama

Anda dapat memanggil alur bersama dari proxy atau dari alur bersama lainnya dengan menggunakan kebijakan FlowCallout.

  1. Di UI Apigee, buka proxy API atau alur bersama tempat Anda ingin memanggil alur bersama.
  2. Klik tab Mengembangkan.
  3. Di Navigator, di samping Kebijakan, klik +.
  4. Dalam daftar kebijakan, di bagian Extension, klik FlowCallout.
  5. Masukkan nama tampilan dan nama (ID unik), lalu pilih alur bersama yang akan dipanggil oleh kebijakan ini.
  6. Klik Tambahkan.
  7. Tambahkan kebijakan FlowCallout baru ke proxy tempat Anda ingin melakukan panggilan.

Lihat juga

Membuat rantai proxy API bersama