Tüm Ürünler
Search
Belge Merkezi

Enterprise Distributed Application Service:Dubbo geliştirici kılavuzu

Son Güncelleme:Oct 03, 2026

Enterprise Distributed Application Service (EDAS), mikroservis uygulamaları oluşturmak için Apache Dubbo'yu destekler. Bu kılavuz, Dubbo Hizmet Sağlayıcı Arayüzü (SPI) genişletme sistemini, çerçeve iç yapısını ve tasarım ilkelerini kapsar.

SPI genişletme sisteminin çalışma şekli

Dubbo, çekirdeğini modüler tutmak için hafif bir SPI mekanizması kullanır. Protokoller, yük dengeleyiciler, yönlendiriciler ve kayıt defterleri gibi her ana bileşen, takılabilir bir genişletme noktası olarak tanımlanır. Bu sayede şunları yapabilirsiniz:

  • Yerleşik uygulamaları değiştirmek: Çerçeve kodunu değiştirmeden tek bir yapılandırma özelliğini değiştirerek yerleşik uygulamaları başka bir uygulama ile değiştirin.

  • Özel uygulamalar eklemek: Bir Java arayüzü uygulayarak ve bunu SPI dosyası aracılığıyla kaydederek özel uygulamalar ekleyin.

  • Davranışı şeffaf bir şekilde genişletmek: Dubbo, üçüncü taraf genişletmeleri ile yerleşik uygulamaları eşit düzeyde ele alır.

Temel mimari hakkında bilgi edinmek için aşağıdaki çerçeve tasarımı ve SPI yükleme konularından başlayın.

SPI genişletme uygulamaları

Dubbo, işlevlerine göre burada organize edilmiş 20'den fazla genişletme noktası tanımlar. Her genişletme noktası, özel uygulamaları destekleyen bir Java arayüzüdür.

RPC ve trafik yönetimi


Genişletme noktası


Ne kontrol eder?


Protocol


Uzaktan çağrılar için ağ protokolü


Filter


Günlük kaydı veya kimlik doğrulama gibi çapraz kesen sorunlar için istek ve yanıt filtre zinciri


Cluster


Bir çağrı başarısız olduğunda hata toleransı stratejisi (örneğin, failover, failfast, forking)


Router


Trafiğin hangi sağlayıcılara gideceğini belirleyen yönlendirme kuralları


LoadBalance


Birden çok sağlayıcı arasında istek dağıtım stratejisi


Merger


Çatallı çağrılar için sonuç birleştirme mantığı

Hizmet keşfi ve yapılandırma


Genişletme noktası


Ne kontrol eder?


Registry


Hizmet kayıt defteri entegrasyonu


Monitor


Ölçüm toplama ve izleme verisi raporlama

Taşıma ve serileştirme


Genişletme noktası


Ne kontrol eder?


Transporter


Ağ taşıma katmanı


Exchanger


Taşıma katmanı üzerinden istek-yanıt değişim modeli


Networker


Çoklu kayıt defteri senaryoları için ağ topolojisi yönetimi


Serialization


Veri serileştirme formatı

Yaşam döngüsü ve vekil sunucu oluşturma


Genişletme noktası


Ne kontrol eder?


InvokerListener


Hizmet çağırma olaylarında tetiklenen geri arama


ExporterListener


Hizmet dışa aktarma olaylarında tetiklenen geri arama


ExtensionFactory


Genişletme örneklerini oluşturma ve yönetme fabrikası


ProxyFactory


Hizmet vekillerini oluşturma fabrikası


Compiler


Dinamik Java kaynak kodu derleme


Dispatcher


Gelen mesajlar için iş parçacığı gönderim stratejisi


ThreadPool


Hizmet yürütme için iş parçacığı havuzu stratejisi

Tanılama ve yardımcı programlar


Genişletme noktası


Ne kontrol eder?


TelnetHandler


Telnet tabanlı çalışma zamanı yönetim komutları için işleyici


StatusChecker


Hizmet durumu raporlaması için sağlık kontrolü mantığı


PageHandler


Yerleşik HTTP sunucusu için durum sayfası oluşturma


Container


Hizmet konteyneri yaşam döngüsü yönetimi


Cache


Tekrarlanan çağrılar için sonuç önbelleğe alma stratejisi


Validation


Çağırmadan önce parametre doğrulama


LoggerAdapter


Farklı günlük kaydı çerçevelerinin takılması için adaptör

Çerçeve iç yapısı

Bu konular, Dubbo'nun nasıl oluşturulduğunu ve SPI mekanizmasının perde arkasında nasıl çalıştığını açıklar.


Konu


Neleri kapsar?


Kaynak kodu derleme


Dubbo kaynağını depodan derleme


Çerçeve tasarımı


Genel mimari, katmanlı tasarım ve modül bağımlılıkları


SPI yükleme


Dubbo'nun SPI genişletmelerini nasıl keşfettiği, yüklediği ve örneklediği


Uygulama ayrıntıları


Çekirdek bileşenlerin dahili uygulaması


Yapılandırma merkezi


Dağıtılmış hizmetler için merkezi yapılandırma yönetimi


Ortak anlaşma


Dubbo bileşenleri arasında paylaşılan ortak protokol kuralları ve sözleşmeler

Tasarım ilkeleri

Dubbo çerçevesi, bu konularda belgelenen bir dizi tasarım ilkesini takip eder. Çerçeveye katkıda bulunurken veya özel genişletmeler oluştururken bunları referans olarak kullanın.


Konu


Neleri kapsar?


Detaylara dikkat


Çerçeve kodunda uç durumların ve ince tasarım kararlarının neden önemli olduğu


Temel tasarım kalıpları


Kod tabanı genelinde kullanılan temel tasarım kalıpları ve kurallar


Genişletilebilirlik ve artımlı genişletme


Geriye dönük uyumlu ve birleştirilebilir genişletmelerin nasıl tasarlanacağı


Yapılandırma tasarımı


Yapılandırma parametreleri ve varsayılanlar tasarlama yönergeleri


Sağlamlık


Hata işleme, esneklik kalıpları ve çerçevede savunmacı kodlama


Hata önleyici tasarım


Net API'ler, mantıklı varsayılanlar ve giriş doğrulama yoluyla yanlış kullanımı önleme


Genişletme noktası yeniden düzenleme


Genişletme noktası arayüzlerinin ne zaman ve nasıl yeniden düzenleneceği

Kod kalitesi standartları


Konu


Neleri kapsar?


Sürüm oluşturma


Sürüm numaralandırma kuralları ve uyumluluk garantileri


Kontrol listesi


Çerçeve değişiklikleri için sürüm öncesi doğrulama kontrol listesi


Kod kokuları


Dubbo çerçeve kodundan kaçınılması gereken yaygın anti-kalıplar


Kodlama kuralları


Kod stili, adlandırma ve biçimlendirme standartları


Uyumluluk testi


Geriye ve ileriye dönük uyumluluk için test stratejisi