High-speed Service Framework (HSF), Alibaba Group'ta yaygın olarak kullanılan dağıtık bir Uzaktan Yordam Çağrısı (RPC) çerçevesidir. HSF, tek tip bir hizmet yayınlama ve çağırma modeli aracılığıyla dağıtık uygulamaların bağımlılıklarını azaltır. Uzak iletişim, serileştirme, performans kaybı ile eşzamanlı ve eşzamansız çağrıları yöneterek uygulama kodunun iş mantığına odaklanmasını sağlar.
Dubbo 3.0, açık kaynaklı Dubbo ve HSF entegrasyonunu sunar. Mevcut bir HSF uygulamasını yükseltmek için bkz. Bir HSF uygulamasını Dubbo 3.0 uygulamasına güncelleyin. Yükseltme işlemini Enterprise Distributed Application Service (EDAS) konsolu üzerinden gerçekleştirirsiniz. Yükseltilen uygulamayı, orijinal yöntemi veya EDAS'ın Dubbo uygulamaları için sunduğu mikro hizmet yönetimi özelliğini kullanarak geliştirebilirsiniz.
Mimari
HSF tamamen istemci tarafında çalışır; istekleri işleyen merkezi bir küme bulunmaz. Tüm hizmet çağrıları, sağlayıcılar ve tüketiciler arasında nokta-nokta şeklinde gerçekleşir. HSF, hizmet keşfi, yönetimi ve operasyonel görünürlük için birkaç harici sisteme bağlıdır.
Veri düzlemi
Veri düzlemi, RPC çağrıları aracılığıyla doğrudan veri alışverişi yapan hizmet sağlayıcılarından ve tüketicilerinden oluşur.
| Bileşen | Rolü |
|---|---|
| Hizmet sağlayıcısı | 12200 numaralı bağlantı noktasında dinleme yapar, gelen istekleri işler ve adresini adres kayıt defterine yayınlar. |
| Hizmet tüketicisi | Kayıt defteri üzerinden hizmet adreslerine abone olur ve alınan adres bilgilerine göre nokta-nokta çağrılar başlatır. Adres kayıt defteri çağrı sürecine dahil değildir. |
Kontrol düzlemi
Kontrol düzlemi, hizmet keşfi, yapılandırma ve operasyonel görünürlüğü yönetir.
| Bileşen | Rolü | Gerekli mi? |
|---|---|---|
| Adres kayıt defteri | Hizmet kaydı ve keşfi için sağlayıcı adreslerini depolar. Bu bileşen olmadan yalnızca doğrudan nokta-nokta çağrılar mümkündür. | Evet |
| Kalıcı yapılandırma merkezi | Yönlendirme, gruplama ve ağırlıklandırma kuralları gibi yönetim kurallarını depolar. Tüketiciler, adres seçimi mantığını belirlemek üzere bu kurallara başlangıçta abone olur. | Açıkça belirtilmemiştir |
| Meta veri depolama merkezi | Yöntem imzaları ve parametre yapıları gibi hizmet meta verilerini depolar. Hizmet çağrılarını etkilemez. HSF başlatıldığında tüketici, hizmet işletme ve bakımını kolaylaştırmak amacıyla meta verileri meta veri depolama merkezine bildirir. | Hayır |
| EDAS konsolu | Kayıt defteri, yapılandırma merkezi ve meta veri depolama merkezini birbirine bağlar. Hizmet sorgulama, yönetim kuralı yönetimi ve diğer operasyonel özellikleri sunar. | Hayır |
Desteklenen çağrı yöntemleri
HSF aşağıdaki çağrı yöntemlerini destekler:
| Yöntem | Açıklama |
|---|---|
| Eşzamanlı | Varsayılan yöntemdir. Tüketici, sağlayıcı bir sonuç döndürene kadar beklemeye devam eder. |
| Eşzamansız (Future) | Tüketici yürütmeye devam eder ve sonuçları daha sonra HSFResponseFuture.getResponse(int timeout) aracılığıyla alır. |
| Eşzamansız (Callback) | Tüketici bir HSFResponseCallback işleyicisi kaydeder. HSF, sonuçlar hazır olduğunda bu işleyiciyi çağırır. |
| Genel | Tüketici, sağlayıcı API arabirimlerini içe aktarmadan hizmetleri çağırır. Sağlayıcı SDK'larına bağımlı olmayan hafif, platform düzeyinde entegrasyonlar oluşturmak için uygundur. |
İzleme filtresi uzantısı
HSF, yerleşik bir çağrı filtresi mekanizması içerir. HSF çağrı izine entegre olan özel filtre uzantı noktaları uygulayabilirsiniz. Bu uzantılar HSF isteklerini işler.
Uygulama geliştirme
HSF iki geliştirme ve dağıtım modelini destekler:
| Model | Çalışma zamanı bağımlılığı | Desteklenen özellikler | Dağıtım formatı |
|---|---|---|---|
| Ali-Tomcat | Ali-Tomcat + Pandora | Hizmet kaydı ve keşfi, örtük parametre geçişi, eşzamansız çağrılar, genel çağrılar, izleme filtresi uzantısı | WAR paketi |
| Pandora Boot | Pandora | Hizmet kaydı, hizmet keşfi, eşzamansız çağrılar | Çalıştırılabilir JAR paketi |