Azure API Management nasıl çalışır?

Tamamlandı

Burada Azure API Management'ın üç kullanım noktasından nasıl çalıştığını ele aacağız. Bu bilgi, Azure API Management'ın kuruluşunuzun API'lerini yönetmek için iyi bir çözüm olup olmadığını değerlendirmenize yardımcı olur.

Bu ünitede Azure API Management'ın aşağıdaki kullanıcı türleri için nasıl çalıştığını öğreneceksiniz:

  • API tüketicileri
  • API sağlayıcıları
  • Uygulama geliştiricileri

Azure API Management, API tüketicileri için nasıl çalışır?

API tüketicisi, veriler için API'ye istekte bulunan bir varlıktır. Örneğin, bu varlıklardan herhangi biri bir API tüketicisi olabilir:

  • Mobil uygulama
  • Web uygulaması
  • IoT cihazı

Tüketiciler için temel Azure API Management bileşeni ağ geçididir. Tüm tüketici API'leri çağrıları önce ağ geçidi uç noktanıza yönlendirilir. API tüketicileri yalnızca ağ geçidiyle doğrudan etkileşim kurar ve asla gerçek API dağıtım örneğiyle etkileşim kurmaz.

Ağ geçidi, tüketici açısından birçok görev gerçekleştirir, ancak en önemli görevler şunlardır:

  • Kimlik Doğrulaması. Ağ geçidi, tüketicinin abonelik anahtarlarını, JWT belirteçlerini ve diğer kimlik bilgilerini doğrulayarak API'ye erişimi izler.
  • Güvenlik. Ağ geçidi, önceden tanımlanmış hız sınırları ve tüketici kullanım kotaları zorlayarak veya api'nin şemasında istek ve yanıtları doğrulayarak API'nin kötüye kullanımını önler.
  • Dönüşüm. Ağ geçidi, API isteğini veya yanıtını gerektiği gibi dönüştürür. Örneğin, arka uç hizmeti XML verileriyle yanıt verirse, aşağıdaki görüntüde gösterildiği gibi XML'yi otomatik olarak JSON'a dönüştürerek API'yi modernleştirebilirsiniz.
  • Yönlendirme. Bir API isteğinin kimliği doğrulandıktan, doğrulandıktan ve dönüştürüldükten sonra ağ geçidi çağrıyı API'nin dağıtıldığı arka uç hizmetine yönlendirir.
  • Performans. Ağ geçidi arka uç API yanıtını bir önbellekte depolayabilir. Arka uç yanıtının zaman içinde statik olduğu durumlarda, önbellekten sonraki yanıtların sunulması tüketicilere daha hızlı yanıt süreleri verir ve arka uç sunucusu üzerindeki yükü azaltır.

A mobile app requests a weather forecast using an API. The Azure API Management gateway routes the call to the backend server and then converts the server's XML response to JSON before returning it to the mobile app.

Azure API Management, API sağlayıcıları için nasıl çalışır?

API sağlayıcısıysanız, API'leriniz yayımlandıktan sonra da çok fazla işiniz vardır. Bu çalışma şunları içerir:

  • API ilkelerini ayarlama
  • API tüketicilerini yönetme
  • API düzeltmelerini ve sürümlerini yönetme
  • API'lerinizi izleme ve analiz etme

Azure portalındaki Azure API Management yönetim arabirimini kullanarak tüm bu görevleri ve daha fazlasını gerçekleştirebilirsiniz. Veya Azure CLI veya Azure PowerShell gibi araçları kullanarak. Yönetim arabirimi, API ilkelerini ayarlamanıza olanak sağlamanın yanı sıra (önceki ünitede öğrendiğiniz gibi) aşağıdaki görevleri gerçekleştirmenizi sağlar:

  • API belirtimlerini tanımlama ve içeri aktarma. OpenAPI belirtimini, REST API'yi, Basit Nesne Erişim Protokolü (SOAP) API'sini (isteğe bağlı olarak REST'e dönüştürebileceğiniz), webSocket API'sini veya GraphQL API'sini içeri aktarabilirsiniz. Ayrıca şu Azure hizmetlerinin örneklerini içeri aktararak bir API oluşturabilirsiniz: Web Uygulaması, Kapsayıcı Uygulaması, İşlev Uygulaması, Mantıksal Uygulama ve Service Fabric. Ayrıca boş bir API oluşturabilir ve el ile tanımlayabilirsiniz.
  • Kullanıcıları ve grupları yönetme.
    • Kullanıcı bir geliştirici hesabıdır. Api tüketicisi için bir hesaptır. Kullanıcıları el ile ekleyebilir veya hesap oluşturmaya davet edebilirsiniz, ancak kullanıcıların çoğu geliştirici portalını kullanarak kendi hesaplarını oluşturur.
    • Grup, ilgili kullanıcılardan oluşan bir koleksiyondur. Bir grubu belirli bir API ürünüyle ilişkilendirebilirsiniz ve bu gruptaki her kullanıcının geliştirici portalında ürüne erişimi olur.
  • API'leri ürünlere paketle. Azure API Management'ta ürün, ilgili API'lerin bir grubudur. Birden çok API'yi tek bir ürün olarak paketleyerek, tüm API'leri ayrı ayrı yapılandırmak yerine yalnızca ürünü yapılandırabilirsiniz. Örneğin, hız sınırlarını ve diğer ilkeleri ayarlayın, kullanım koşullarını tanımlayın, gruplar ekleyin vb. Bu yapılandırma, üründeki tüm API'lere uygulanır. Ürünü yayımladıktan sonra tüketiciler ürüne abone olabilir ve API'lerini tek bir abonelik anahtarıyla kullanabilir.
  • API düzeltmelerini ve sürümlerini yönetme. API geliştirici ekibinizin bir API'de değişiklik yapması gerektiğinde, düzeltmeleri ve sürümleri kullanarak değişikliği tüketicileri olumsuz etkilemeyecek güvenli ve denetimli bir şekilde kullanıma sunun:
    • Düzeltme, API'de nispeten küçük veya bölünemez bir değişikliktir. Geliştirme ekibiniz, aşağıdaki görüntüde olduğu gibi düzeltmeyi üretim API'sinden ayrı olarak kodlayabilir ve test edebilir. Ardından, düzeltmeniz tüketiciler için hazır olduğunda, güncelleştirilmiş API'yi geçerli düzeltme olarak ayarlamak için Azure API Management yönetim arabirimini kullanın.
    • Sürüm, API'de yapılan görece önemli veya hataya neden olan bir değişikliktir. Azure API Management, geliştiricilere API'nin birden çok sürümünü aynı anda sunmanızı sağlar. Ayrıca yol tabanlı, üst bilgi tabanlı ve sorgu dizesi tabanlı sürüm oluşturma da dahil olmak üzere çeşitli sürüm oluşturma düzenleri sunar.
  • API'leri izleme ve analiz etme. Yönetim arabirimi, API trafiğini gerçek zamanlı olarak izlemek ve gözden geçirmek için yerleşik izleme araçları ve tüketicilerin yayımlanmış API'lerinizi nasıl kullandığına ilişkin içgörüler için analiz içerir. Azure API Management, API'leri izlemek ve analiz iş yüklerini çalıştırmak için çeşitli Azure araçlarını da destekler. Azure API Management tarafından desteklenen Azure hizmetleri Arasında Azure İzleyici Günlükleri, Uygulama Analizler ve Event Hubs bulunur.

Depiction of how revisions work in Azure API Management. API requests from consumers are routed to the current revision of the API, whereas API requests from the in-house development team are routed to the API revision.

Azure API Management uygulama geliştiricileri için nasıl çalışır?

Tüketim katmanı dışında, tüm Azure API Management örnekleri, API'lerinizi potansiyel ve mevcut API tüketicilerine karşı ortaya çıkardığınız bir geliştirici portalı içerir. Geliştirici portalı, kuruluşunuzun markasına ve gereksinimlerine uyacak şekilde özelleştirilebilir bir varsayılan arabirimle birlikte gelir.

Geliştirici hesabı olan uygulama geliştiricileri geliştirici portalında oturum açar (henüz hesabı olmayan konuk kullanıcıları da kabul eder). Ardından geliştiricilere API'lerle aşağıdaki yollarla etkileşim kurmalarını sağlayan bir web arabirimi sunulur:

  • API belgelerine erişme. Geliştiriciler her API için sağladığınız belgeleri gözden geçirebilir.
  • API'yi test etme. Geliştirici portalı, bir geliştiricinin API'yi hızlı ve güvenli bir şekilde test etmelerini sağlayan etkileşimli bir konsol sunar. Geliştirici bir API işlemi seçebilir, parametre değerleri ekleyebilir ve ardından API'nin hangi yanıtı döndüreceğini belirlemek için çağrıyı gönderebilir.
  • API kodu örneklerini gözden geçirme. Geliştirici portalı C#, Java, JavaScript, PHP ve Python gibi çeşitli programlama dillerinde API çağrı örnekleri sunar.
  • BIR API'ye abone olun. Bir tüketici API'nizi kullanmaya karar verince, geliştirici portalı kullanıcının API'ye bir abonelik oluşturmasını ve API'yi çağırırken kullanmak üzere bir abonelik anahtarı almasını sağlar.
  • Analiz çalıştırma. Geliştirici portalı, geliştiricinin API kullanımına ilişkin analizler sunar.