Sunucu tarafından gönderilen olaylar için API'yi yapılandırma
ŞUNLAR IÇIN GEÇERLIDIR: Geliştirici | Temel | Temel v2 | Standart | Standart v2 | Premium
Bu makalede, API Management'ta sunucu tarafından gönderilen olayları (SSE) uygulayan bir API yapılandırma yönergeleri sağlanır. SSE, bir istemci bağlantı kurduktan sonra http üzerinden istemciye otomatik olarak veri akışı (gönderme) için HTML5 EventSource
standardını temel alır.
İpucu
API Management ayrıca webSocket API'leri için yerel destek sağlar ve bu da istemci ile sunucu arasında tek, kalıcı, teklife bağlı bir bağlantıyı açık tutar.
Önkoşullar
- Mevcut bir API Management örneği. Henüz oluşturmadıysanız bir tane oluşturun.
- SSE uygulayan bir API. Desteklenen içeri aktarma yöntemlerinden birini kullanarak API'yi içeri aktarın ve API Management örneğinizde yayımlayın .
SSE yönergeleri
SSE uygulayan bir arka uç API'sine ulaşmak için API Management'ı kullanırken bu yönergeleri izleyin.
Uzun süre çalışan HTTP bağlantıları için hizmet katmanı seçme - SSE, belirli API Management fiyatlandırma katmanlarında desteklenen uzun süre çalışan bir HTTP bağlantısına dayanır. Uzun süre çalışan bağlantılar klasik ve v2 API Management katmanlarında desteklenir, ancak Tüketim katmanında desteklenmez.
Boşta kalan bağlantıları canlı tutma - İstemci ve arka uç arasındaki bir bağlantı 4 dakika veya daha uzun süre boşta kalabilirse, bağlantıyı canlı tutmak için bir mekanizma uygulayın. Örneğin, bağlantının arka ucunda bir TCP tutma sinyali etkinleştirin veya istemci tarafından 4 dakikada en az bir kez trafik gönderin.
Bu yapılandırma, API Management altyapısında kullanılan Azure Load Balancer tarafından zorunlu kılınan 4 dakikalık boşta oturum zaman aşımını geçersiz kılmak için gereklidir.
Olayları hemen istemcilere aktar - Olayların istemcilere hemen geçirilmesi için ilkede
forward-request
yanıt arabelleği almayı kapatın. Örneğin:<forward-request timeout="120" fail-on-error-status-code="true" buffer-response="false"/>
Yanıtları arabelleğe alabilen diğer ilkelerden kaçının - Yanıt
validate-content
içeriğini de arabelleğe alabilir ve SSE uygulayan API'lerle kullanılmamalıdır.Azure İzleyici, Uygulama Analizler ve Event Hubs için istek/yanıt gövdesini günlüğe kaydetmekten kaçının - Tanılama ayarlarını kullanarak Azure İzleyici veya Uygulama Analizler için API isteği günlüğü yapılandırabilirsiniz. Tanılama ayarları, istek yürütmenin çeşitli aşamalarında istek/yanıt gövdesini günlüğe kaydetmenize olanak sağlar. SSE uygulayan API'ler için bu beklenmeyen arabelleğe alma işlemine neden olabilir ve bu da sorunlara yol açabilir. Genel/Tüm API'ler kapsamında yapılandırılan Azure İzleyici ve Uygulama Analizler için tanılama ayarları hizmetteki tüm API'ler için geçerlidir. Gerektiğinde tek tek API'lerin ayarlarını geçersiz kılabilirsiniz. Event Hubs'da oturum açarken, log-to-eventhubs kullanarak istek/yanıt günlüğü için kapsam ve bağlam bilgisi miktarını yapılandırabilirsiniz. SSE uygulayan API'ler için Azure İzleyici, Uygulama Analizler ve Event Hubs için istek/yanıt gövdesi günlüğünü devre dışı bırakmış olduğunuzdan emin olun.
Yanıt önbelleğe almayı devre dışı bırakma - İstemciye bildirimlerin zamanında geldiğinden emin olmak için yanıt önbelleğe alma özelliğinin etkinleştirilmediğini doğrulayın. Daha fazla bilgi için bkz . API Management önbelleğe alma ilkeleri.
Yük altında API'yi test etme - Üretime geçmeden önce performans veya yapılandırma sorunlarını algılamak için API'nizi yük altında test etmek için genel uygulamaları izleyin.
Sonraki adımlar
- API Management'ta ilkeleri yapılandırma hakkında daha fazla bilgi edinin.
- API Management kapasitesi hakkında bilgi edinin.