Yeniden kullanılabilir paylaşılan akışlar

Apigee Edge belgelerini görüntülüyorsunuz.
Apigee X belgelerine gidin.
bilgi

Politikaları ve kaynakları, birden fazla API proxy'sinden ve hatta diğer paylaşılan akışlardan kullanabileceğiniz bir paylaşılan akışta birleştirebilirsiniz. Paylaşılan akış, proxy'ye benzese de bitiş noktası yoktur. Yalnızca paylaşılan akışın kendisiyle aynı kuruluştaki bir API proxy'sinden veya paylaşılan akıştan kullanılabilir.

Paylaşılan akış, birden fazla yerde kullanışlı olan işlevleri tek bir yerde yakalayarak tutarlılık sağlamanıza, geliştirme süresini kısaltmanıza ve kodu daha kolay yönetmenize yardımcı olur.

Aşağıdaki videoda, Edge kullanıcı arayüzünde paylaşılan akışın nasıl oluşturulacağı ve izleneceği gösterilmektedir.

Aşağıdaki 5 dakikalık videoda, Klasik Edge kullanıcı arayüzünde (yalnızca özel bulut için Edge) paylaşılan bir akışın nasıl oluşturulacağı ve izleneceği gösterilmektedir.

FlowCallout politikasını kullanarak paylaşılan bir akışı çağırabilirsiniz. Ayrıca, paylaşılan bir akışı akış kancasına ekleyerek paylaşılan akışın bir proxy veya hedef isteğinden önce ya da bir proxy veya hedef yanıtından sonra yürütülmesini sağlayabilirsiniz.

FlowCallout politikasıyla ilgili referans için FlowCallout politikası başlıklı makaleyi inceleyin. Akış kancaları hakkında daha fazla bilgi için Akış kancası kullanarak paylaşılan akış ekleme başlıklı makaleyi inceleyin.

Örneğin, birden fazla yerde kullanılan veya kuruluşunuzdaki API'lerde standartlaştırılması gereken işlev alanlarınız olduğunu düşünün. Aşağıdakiler de dahil olmak üzere her kategori için paylaşılan bir akışınız olabilir:

  • security, OAuth ve API anahtarı doğrulaması kullanılarak yetkilendirme koduyla birlikte tehditlere karşı koruma kodu.
  • Standart hata mesajları oluşturmak için logging.
  • XML ve JSON mesaj biçimleri arasında dönüşüm yapmak için mediation.

Aşağıdaki resimde, iki API proxy'si gelen kullanıcı isteklerinin kimliğini doğrulamak için bir paylaşılan akışı (FlowCallout politikasıyla) çağırıyor. AuthSharedFlow, proxy'lerden önce kuruluşta ayrı olarak dağıtılır. Böylece, proxy'lerden gelen istekleri desteklemek için kullanılabilir. Paylaşılan akış, geniş kapsamlı şirket politikalarından sorumlu bir ekip tarafından geliştirilip yönetilebilir ve ardından daha uzmanlaşmış uygulamalar geliştiren iş birimi ekipleri tarafından proxy'lerde kullanılabilir.

Paylaşılan akış geliştirme

Paylaşılan akış geliştirirken her zaman bir API proxy'sine gönderilen çağrılarla test etmeniz gerekir. Başka bir deyişle, istekleri doğrudan paylaşılan bir akışa API proxy'si gibi gönderemezsiniz. Bunun yerine, istekleri bir API proxy'sine gönderirsiniz. Bu proxy de paylaşılan akışı çağırır.

Paylaşılan akış geliştirme ile ilgili üst düzey adımlar şunlardır:

  1. Paylaşılan özellikler kümesinin ne olması gerektiğini belirleyin.

    Örneğin, trafik artışlarını bastırma gibi trafik yönetimi özelliklerini birleştirmek isteyebilirsiniz. Bu sayede, yapılandırmalarını iş kolu mantığını uygulayanların iş akışının dışında yönetebilirsiniz.

  2. API proxy'si geliştirirken yaptığınız gibi politikalar uygulayarak ve kaynakları destekleyerek paylaşılan akış geliştirin.

    Paylaşılan akış, koşullu adımlardan oluşan bir dizidir. Bu nedenle, bir uzantı geliştirmek API proxy'si geliştirmeye benzer. Bir proxy'ye ekleyebileceğiniz politikaları ve kaynakları dahil edebilirsiniz.

    Örneğin, trafik yönetimi desteğiniz kapsamında, aşağıdaki örnekte olduğu gibi saniyede yalnızca 30 isteğe izin vermek için bir ani artış önleme politikası uygulayabilirsiniz:

    <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>

    Ardından, trafik yönetimi için paylaşılan bir akışa Spike Arrest politikasını adım olarak ekleyebilirsiniz. Politika, paylaşılan akışı çağıran tüm API proxy'leri için yürütülür.

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

    Yönetim konsolunda paylaşılan akış başlatma hakkında bilgi edinmek için Edge kullanıcı arayüzünde paylaşılan akış oluşturma başlıklı makaleyi inceleyin.

    API proxy'lerinde olduğu gibi, paylaşılan akış kaynağı yapıtlarınızı içeren bir ZIP dosyası içe aktarabilirsiniz (proxy'leri içe aktarma hakkında daha fazla bilgi için Yeni bir API proxy'si içe aktarma başlıklı makaleyi inceleyin). Aşağıda, yönetim API'si ile paylaşılan akışın nasıl içe aktarılacağı gösterilmektedir:

    curl -X POST -F "file=@/path/to/zip/file.zip" \ 'https://api.enterprise.apigee.com/v1/o/{org_name}/sharedflows?action=import&name=shared-flow-name' \
    -u email:password
  3. Paylaşılan akışı, onu kullanacak proxy'leri veya paylaşılan akışları dağıtmadan önce ortama dağıtın. Paylaşılan akışları, API proxy'lerini dağıttığınız şekilde dağıtırsınız. (Daha fazla bilgi için Dağıtıma genel bakış başlıklı makaleyi inceleyin.)

    Paylaşılan akış, aynı kuruluşta olmalı ve onu kullanan API proxy'leri ve diğer paylaşılan akışlarla aynı ortama dağıtılmalıdır. Paylaşılan akışı proxy'lerden önce dağıtmak, proxy'nin dağıtım sırasında paylaşılan akışa olan bağımlılığını çözmeyi mümkün kılar.

    Aşağıdaki gibi bir yönetim API'si çağrısıyla paylaşılan akış dağıtabilirsiniz:

    curl -X POST --header "Content-Type: application/octet-stream" \
    https://api.enterprise.apigee.com/v1/o/{org_name}/e/{env_name}/sharedflows/{shared_flow_name}/revisions/{revision_number}/deployments \
    -u email:password

    Ayrıca, şu anda dağıtılmış olan bir paylaşılan akışı kesinti olmadan değiştirebilirsiniz. (Bu, API proxy'lerine çok benzer. Daha fazla bilgi için Yönetim API'sini kullanarak API proxy'lerini dağıtma başlıklı makaleyi inceleyin. Yönetim API'sini kullanan istek formu:

    curl -X POST --header "Content-Type:application/x-www-form-urlencoded" \
    https://api.enterprise.apigee.com/v1/o/{org_name}/e/{env_name}/sharedflows/{shared_flow_name}/revisions/{revision_number}/deployments?"override=true" \
    -u email:password
  4. Tüketici API proxy'sini, kendi akışının bir parçası olarak paylaşılan akışı çağırabilecek şekilde geliştirin.

    Bir API proxy'sinden FlowCallout politikası ile paylaşılan bir akışı çağırırsınız. (Akış kancası kullanarak paylaşılan akış ekleme bölümünde açıklandığı gibi, paylaşılan akışı akış kancası kullanarak proxy'ye de ekleyebilirsiniz.) API proxy'si oluşturmayla ilgili giriş niteliğindeki eğitim için İlk API proxy'nizi oluşturma başlıklı makaleyi inceleyin.

    Paylaşılan bir akışı kullanmak için, onu kullanacak olan proxy'ye veya paylaşılan akışa bir FlowCallout politikası eklersiniz. Başka bir hizmeti çağırdığınız bir hizmet çağrısı politikası gibi, FlowCallout da paylaşılan akışı çağırır. Tüketen API proxy'si, paylaşılan akıştan sonra ve paylaşılan akışla aynı ortama dağıtılmalıdır. FlowCallout politikasını kullanarak paylaşılan akışa yapılan bir çağrıyı test etmek istediğinizde paylaşılan akışın mevcut olması gerekir.

    Aşağıdaki kodda, FlowCallout politikası traffic-management-shared adlı paylaşılan bir akışı çağırıyor.

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

    Daha fazla bilgi için API proxy'sinden veya paylaşılan akıştan paylaşılan akış çağırma başlıklı makaleyi inceleyin.

  5. Paylaşılan akışı kullanmaya başlamak için tüketen API proxy'sini dağıtın. (Genel olarak dağıtım hakkında daha fazla bilgi için Dağıtımı anlama başlıklı makaleyi inceleyin.)
  6. API proxy'sinde olduğu gibi izleyerek yinelemeli olarak geliştirin.

    API proxy'sinde olduğu gibi, istediğiniz mantığa ulaşana kadar yinelemeli olarak çağırıp izleyerek paylaşılan bir akış geliştirirsiniz. Bu durumda, paylaşılan akış kendi başına çalışmadığı için bir proxy uç noktası çağırır ve proxy'yi izlersiniz.

    İlgili adımlar aşağıdadır:

    1. Hem paylaşılan akışın hem de FlowCallout politikasıyla bunu çağıran API proxy'sinin aynı kuruluşta olduğundan ve aynı ortama dağıtıldığından emin olun.
    2. API proxy'sinin İzleme sekmesinde API proxy'sini izlemeye başlayın.
    3. API proxy'sindeki bir proxy uç noktasına istek gönderme Uç noktadan gelen akış, paylaşılan akışı çağıran FlowCallout politikasını içermelidir.
    4. İzleme sekmesinde, API proxy'sinden paylaşılan akışa giden akışı inceleyin.

      İzleme işleminde, paylaşılan akışın gri bir kutu içinde yer alan bir dizi adım veya politika olarak gösterildiğini unutmayın. FlowCallout politikalarını temsil eden simgeler, paylaşılan akışlardan önce gelir. (İzleme hakkında daha fazla bilgi için İzleme aracını kullanma başlıklı makaleyi inceleyin.)

Edge kullanıcı arayüzünde paylaşılan akış oluşturma

Paylaşılan akış oluşturmak için Apigee Edge kullanıcı arayüzünü kullandığınızda, sıfırdan bir akış oluşturabilir veya mevcut akış kaynaklarını akış paketi .zip dosyası olarak içe aktarabilirsiniz.

  1. Aşağıda açıklandığı şekilde Paylaşılan Akışlar sayfasına erişin. Paylaşılan Akışlar sayfasında, kuruluştaki paylaşılan akışların listesini görüntüleyebilir ve listedeki akışları düzenleyebilir veya silebilirsiniz.

    Edge

    Edge kullanıcı arayüzünü kullanarak Paylaşılan Akışlar sayfasına erişmek için:

    1. apigee.com/edge adresinde oturum açın.
    2. Paylaşılan akışınızı içeren kuruluşu seçin. Kuruluşlarınız arasında geçiş yapma başlıklı makaleyi inceleyin.

      Paylaşılan akış, bu kuruluştan bir ortama dağıtılan tüm API proxy'leri ve paylaşılan akışlar tarafından kullanılabilir. Bu kuruluşun dışından erişilemez.

    3. Soldaki gezinme çubuğunda Geliştir > Paylaşılan Akışlar'ı seçin.

    Classic Edge (Private Cloud)

    Klasik Edge kullanıcı arayüzünü kullanarak Paylaşılan Akışlar sayfasına erişmek için:

    1. http://ms-ip:9000 adresinde oturum açın. Burada ms-ip, Yönetim Sunucusu düğümünün IP adresi veya DNS adıdır.
    2. Paylaşılan akışınızı içeren kuruluşu seçin. Kuruluşlarınız arasında geçiş yapma başlıklı makaleyi inceleyin.

      Paylaşılan akış, bu kuruluştan bir ortama dağıtılan tüm API proxy'leri ve paylaşılan akışlar tarafından kullanılabilir. Bu kuruluşun dışından erişilemez.

    3. Üst gezinme çubuğunda API'ler > Paylaşılan Akışlar'ı seçin.
  2. Yeni bir paylaşılan akış eklemeye başlamak için + Paylaşılan Akış düğmesini tıklayın.
  3. Paylaşılan Akış Oluşturma sayfasında, yeni akışı nasıl oluşturmak istediğinizi seçin:
    • Sıfırdan yeni akış oluşturun. Politikaları ve kaynakları akışta adım olarak yapılandırabilirsiniz.
      1. Paylaşılan Akışı Boşalt'ı seçin.
      2. Bir ad değeri girin. Bu, API proxy'lerinin ve diğer paylaşılan akışların bu paylaşılan akışa referans vermek için kullanacağı addır. Ad, akışı kullanan geliştiriciler için açıklayıcı olmalıdır.
      3. Akışın ne yaptığı hakkında daha fazla bilgi vermek için bir açıklama girin.
      4. İleri'yi tıklayın.
      5. İsteğe bağlı olarak, yeni akışın dağıtılmasını istediğiniz ortamları seçin.

        Örneğin, paylaşılan akışı test ortamına dağıtılan API proxy'lerinden test edecekseniz paylaşılan akışı test'e dağıtın.

      6. Yeni paylaşılan akışın oluşturulup seçtiğiniz ortamlara dağıtılması için Oluştur ve Dağıt'ı tıklayın. Ortam seçmediyseniz paylaşılan akış oluşturulur ancak dağıtılmaz.

    • Akış paketi yükleyerek mevcut kaynaklardan paylaşılan akış oluşturma
      1. Yeni akışta istediğiniz öğeleri içeren bir .zip dosyası belirtmek için Paylaşılan Akış Paketi'ni seçin.

        Paylaşılan akış paketi, paylaşılan akışın kaynak öğelerini içerir. Örneğin, Edge kullanıcı arayüzünden paylaşılan bir akışı indirirseniz akış paketini içeren bir .zip dosyası elde edersiniz.

      2. İleri'yi tıklayın.
      3. İçe aktarmak istediğiniz paylaşılan akış kaynaklarını içeren .zip dosyasına göz atmak için Dosya Seç'i tıklayın.
      4. Paylaşılan Akış Adı kutusuna, içe aktarılan akış için bir ad girin. Bu, API proxy'lerinin ve diğer paylaşılan akışların bu paylaşılan akışa referans vermek için kullandığı ad olacaktır. Ad, akışı kullanan geliştiriciler için açıklayıcı olmalıdır.
      5. İleri'yi tıklayın.
      6. İçe aktardığınız kaynaklardan yeni akışı oluşturmak için Oluştur'u tıklayın.

API proxy'sinden veya paylaşılan akıştan paylaşılan akış çağırma

FlowCallout politikası'nı kullanarak bir proxy'den veya başka bir paylaşılan akıştan paylaşılan akış çağırabilirsiniz.

  1. Edge kullanıcı arayüzünde, başka bir paylaşılan akışı çağırmak istediğiniz proxy'yi veya paylaşılan akışı bulun.
  2. Gezgin'de, Politikalar'ın yanındaki + düğmesini tıklayın.
  3. Politika listesinde, Uzantı bölümünde FlowCallout'u tıklayın.
  4. Görünen adı ve adı (benzersiz tanımlayıcı) girin, ardından bu politikanın çağıracağı paylaşılan akışı seçin.
  5. Ekle'yi tıklayın.
  6. Yeni FlowCallout politikasını, aramanın yapılmasını istediğiniz proxy'ye ekleyin.

Aşağıdaki kaynakları da incelemenizi öneririz:

API proxy'lerini birbirine bağlama