Konfigurace rozhraní API pro události odeslané serverem

Tento článek obsahuje pokyny pro konfiguraci rozhraní API v API Management, která implementuje události odeslané serverem (SSE). Služba SSE je založená na standardu HTML5 EventSource pro streamování (nasdílením) dat automaticky klientovi přes PROTOKOL HTTP po navázání připojení.

Tip

API Management také poskytuje nativní podporu pro rozhraní API protokolu WebSocket, která udržují otevřené jedno, trvalé a bidrectionální připojení mezi klientem a serverem.

Požadavky

Dostupnost

Důležité

Tato funkce je dostupná v úrovních API Management Premium, Standard, Basic a Developer.

Pokyny pro SSE

Při použití API Management postupujte podle těchto pokynů a přejděte k back-endovému rozhraní API, které implementuje SSE.

  • Zvolte úroveň služby pro dlouhotrvající připojení HTTP – SSE spoléhá na dlouhotrvající připojení HTTP. Dlouhotrvající připojení se podporují ve vyhrazených API Management úrovních, ale ne ve vrstvě Consumption.

  • Udržování nečinných připojení naživu – pokud připojení mezi klientem a back-endem může být nečinné po dobu 4 minut nebo déle, implementujte mechanismus pro zachování živého připojení. Povolte například signál protokolu TCP keepalive v back-endu připojení nebo odešlete provoz ze strany klienta alespoň jednou za 4 minuty.

    Tato konfigurace je nutná k přepsání časového limitu nečinné relace 4 minuty vynucené Azure Load Balancer, která se používá v infrastruktuře API Management.

  • Přenos událostí okamžitě klientům – Vypněte ukládání odpovědí do vyrovnávací paměti zásad, forward-request aby se události okamžitě předávaly klientům. Například:

    <forward-request timeout="120" fail-on-error-status-code="true" buffer-response="false"/>
    
  • Vyhněte se jiným zásadám, které odpovědi na vyrovnávací paměť – Některé zásady, jako validate-content je třeba také obsah odpovědi na vyrovnávací paměť, a neměly by se používat s rozhraními API, která implementují SSE.

  • Zakázat ukládání odpovědí do mezipaměti – Chcete-li zajistit, aby byla oznámení klientovi včasná, ověřte, že ukládání odpovědí do mezipaměti není povolené. Další informace najdete v tématu API Management zásady ukládání do mezipaměti.

  • Testovací rozhraní API při zatížení – Před přechodem do produkčního prostředí postupujte podle obecných postupů k otestování vašeho rozhraní API při zatížení, abyste zjistili problémy s výkonem nebo konfigurací.

Další kroky