Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Sunucu tarafından gönderilen olaylar (SSA'lar), sunucuların tek bir HTTP bağlantısı üzerinden web istemcilerine gerçek zamanlı güncelleştirmeler göndermesini sağlamak için kullanışlı bir mekanizma sağlar. Çift yönlü iletişime izin veren WebSockets'in aksine, SSA'lar tek yönlü olur: sunucu herhangi bir yanıt beklemeden istemciye veri gönderir.
Sunucu tarafından gönderilen olayları kullanan uygulamalar tıbbi (bekleme alanı durum panoları), finans (hisse senedi borsası görüntüleme), havacılık (uçuş durumu) ve meteoroloji (mevcut hava durumu) gibi çeşitli sektörlerde bulunabilir.
Sunucu tarafından gönderilen olay bağlantısı ve veri akışı
Sunucu tarafından gönderilen olaylar HTTP protokolü üzerinden veri gönderir. Bu olaylar, EventSource arabirimi tarafından tanımlanan ve W3C tarafından standartlaştırılmış çok sayıda tarayıcı tarafından desteklenir. Sunucu tarafından gönderilen bir olay için aşağıdaki işlem gerçekleşir:
- İstemci sunucuya bir bağlantı başlatır.
- Sunucu, metin/event-stream içerik türünü içeren bir yanıt gönderir.
- Hem istemci hem de sunucu bağlantıyı açık bırakıp sunucunun gelecekteki olayları göndermesini sağlar.
Sunucu Tarafından Gönderilen Olaylar ve Kapsayıcılar için Uygulama Ağ Geçidi
Sunucu tarafından gönderilen olaylar ve ölçeklendirme
Kapsayıcılar için Application Gateway ölçeği daraltıldığında, 5 dakika içinde boşaltılmayan devam eden bağlantılar kesilir. Sunucu tarafından gönderilen olaylar, uygulamanın yeni bir bağlantı kurmasını ve yeni olayları almaya başlamasını sağlayan otomatik yeniden deneme mantığını kullanır.
Sunucu tarafından gönderilen olaylar ve HTTP/2
Sunucu tarafından gönderilen olaylar hem HTTP/1.1 hem de HTTP/2 ile desteklenir. Tarayıcı HTTP/2'yi destekleyebilirse, sunucu tarafından gönderilen olaylar aynı bağlantı üzerinden birden çok isteği etkinleştirerek performansı geliştirmek için çoğullamadan yararlanıyor.
Konfigürasyon
Sunucu tarafından gönderilen olaylar Kapsayıcılar için Application Gateway tarafından işlenir. Ancak, sunucu tarafından gönderilen bağlantıların zaman aşımına uğramasını önlemek için Kapsayıcılar için Application Gateway'in istek zaman aşımı değerinin ayarlanması gerekir.
Ağ Geçidi API'sinde, RoutePolicy
değeriyle bir routeTimeout
kaynağı 0s
şeklinde tanımlanmalıdır.
apiVersion: alb.networking.azure.io/v1
kind: RoutePolicy
metadata:
name: route-policy-with-timeout
namespace: test-sse
spec:
targetRef:
kind: HTTPRoute
name: query-param-matching
group: gateway.networking.k8s.io
default:
timeouts:
routeTimeout: 0s
Uyarı
Kapsayıcılar için Application Gateway'in boşta kalma zaman aşımı şu anda 5 dakika olarak ayarlanmıştır. Uygulamanız bu süre içinde veri göndermiyorsa veya almıyorsa, bağlantının kapanmasını önlemek için canlı tutma isteği göndermeyi göz önünde bulundurun. Mesajın başına bir iki nokta :
ekleyerek bunu yorum olarak işlev gösterecek şekilde uygulayabilirsiniz. Örneğin, aşağıdaki iletiyi canlı tutma olarak gönderebilirsiniz: : keep-alive\n\n