Ankara
0 (312) 276 75 93
info@billgatesweb.com

RMI Mimarisi – Blog Yazma – Web Tasarımı Yapımı – Web Tasarımı YouTube Videosu Yapımı – Web Sitesi Tasarlama Fiyatları

Web Danışmanlık Hizmeti, Seo Hizmeti Al, Mobile Uygulama Yaptır, Back Link Satın Al, Blog Yazdırmak İstiyorum, Makale YAZDIRMA siteleri, Parayla makale YAZDIRMA, Seo makale fiyatları, Sayfa başı yazı yazma ücreti, İngilizce makale yazdırma, Akademik makale YAZDIRMA, Makale Fiyatları 2022, Makale yazma, Blog Yazdırma

RMI Mimarisi – Blog Yazma – Web Tasarımı Yapımı – Web Tasarımı YouTube Videosu Yapımı – Web Sitesi Tasarlama Fiyatları

İstemci ve Sunucu – Blog Yazma – Web Tasarımı Yapımı – Web Tasarımı YouTube Videosu Yapımı – Web Sitesi Tasarlama Fiyatları

Uzak Nesneler

Uzak nesnemizi gerçekten kullanmadan önce yapmamız gereken bir şey daha var: onu bir RMI kayıt defterine kaydedin, böylece uzak istemciler onu ağda bulabilir.

Aşağıdaki yardımcı program sınıfı, RegAccount, bunu bir AccountImpl nesnesi oluşturarak ve ardından java.rmi.Naming arabirimini kullanarak yerel kayıt defterindeki bir ada bağlayarak yapar. Nesnenin kaydedilmesi tamamlandıktan sonra sınıf, uzak istemcilerin uzak nesneye bağlanmasına izin veren bir wait() işlevine girer.

RegAccount sınıfını derledikten sonra, yerel RMI kayıt defterine bir Hesap kaydetmek için main() yöntemini çalıştırabilirsiniz. Ancak önce, kayıt defterini başlatmanız gerekir. Sun’ın Java SDK’sı ile kayıt defteri, rmiregistry yardımcı programı kullanılarak başlatılabilir. Bir Unix makinesinde bu böyle yapılabilir.

Artık hazır olan ve bir istemcinin ona erişmesini ve yöntemlerini çağırmasını bekleyen bir uzak Hesap nesnemiz var. Aşağıdaki istemci kodu, önce java.rmi.Naming arabirimini kullanarak uzak Hesap nesnesini arayarak (ve Hesap nesnesinin objhost.org adlı bir makinede kayıtlı olduğunu varsayarak) ve ardından Hesap nesnesine bakılır.

Bu örnek için, istemci işleminin yerel olarak mevcut tüm gerekli sınıflara sahip bir makinede çalıştığını varsaydım (Hesap arabirimi ve AccountImpl uygulamasından oluşturulan saplama ve iskelet sınıfları). Bölümün ilerleyen kısımlarında, istemcide yerel olarak yoksa bu sınıfları uzaktan yüklemekle nasıl başa çıkacağımızı göreceğiz.

RMI Mimarisi

Artık bir RMI nesnesinin tam bir örneğini çalışırken gördüğümüze göre, temeldeki RMI mimarisine genel bir bakışla başlayarak uzak nesnelerin ne işe yaradığına bakalım.

RMI’da temel uzak nesne iletişim olanaklarını oluşturan üç katman vardır:

  • İstemci ve sunucu uygulama nesnelerinin birbirleriyle etkileşim kurmak için kullandığı arabirimi sağlayan saplama/iskelet katmanı.
  • Saplama/iskelet katmanı ile alttaki aktarım protokolü arasındaki ara katman yazılımı olan uzak referans katmanı. Bu katman, uzak nesne referanslarının oluşturulmasını ve yönetimini gerçekleştirir.
  • Kablo üzerinden uzak nesne istekleri gönderen ikili veri protokolü olan taşıma protokolü katmanı.

Bu katmanlar, gösterildiği gibi birbirleriyle etkileşime girer. Bu şekilde sunucu, uzaktan erişilebilir nesneler sağlayan uygulamadır, istemci ise bu sunucu nesneleriyle iletişim kuran herhangi bir uzak uygulamadır.

Dağıtılmış bir nesne sisteminde, istemciler ve sunucular arasındaki ayrımlar zaman zaman oldukça bulanıklaşabilir. Bir işlemin uzaktan etkinleştirilmiş bir nesneyi RMI adlandırma hizmetine kaydettiği ve bir dizi uzak işlemin ona eriştiği durumu düşünün. İlk işlemi sunucu, diğer işlemi istemcileri olarak adlandırma eğiliminde olabiliriz.

Ancak, istemcilerden biri uzak nesnede bir yöntemi çağırıp istemcide yerel olan bir RMI nesnesine bir başvuru iletirse ne olur? Artık sunucunun bir referansı var ve istemciden dışa aktarılan bir nesneyi kullanıyor ve bu da tabloları biraz döndürüyor.

“Sunucu” gerçekten bir nesnenin sunucusu ve başka bir nesnenin istemcisidir ve “istemci” de bir istemci ve bir sunucudur. Tartışma uğruna, genel sistemdeki rolü genellikle bir veya diğeriyle sınırlıysa, dağıtılmış bir uygulamadaki bir sürece sunucu veya istemci olarak atıfta bulunacağız.


RMI Java
Java RMI exploit
Rmı nedir tıp
RMI indicator


Açık bir istemci veya sunucunun olmadığı eşler arası sistemlerde, sistemin öğelerine uygulamaya özel roller (örneğin, sohbet katılımcısı, sohbet kolaylaştırıcısı) açısından atıfta bulunacağız.

Gördüğünüz gibi, bir istemci, bir istemci tarafı saplaması kullanarak uzak bir nesneden istekte bulunur; sunucu nesnesi, bu isteği bir sunucu tarafı nesne iskeletinden alır. İstemci, bir saplama nesnesi üzerinde bir yöntemi çağırarak bir uzak yöntem çağrısı başlatır.

Saplama, temsil ettiği uzak nesneye bir iç referansı korur ve yöntem argümanlarını serileştirilmiş biçimde sıralayarak ve uzak referans katmanından yöntem isteğini ve argümanları uygun uzak nesneye iletmesini isteyerek yöntem çağırma isteğini uzak referans katmanı aracılığıyla iletir.

Marshalling, yerel nesnelerin uzak bir işleme iletilebilmeleri için taşınabilir forma dönüştürülmesini içerir. Java.rmi.Remote arabirimini uygulayıp uygulamadığını belirlemek için her nesne sıralanırken kontrol edilir. Varsa, uzak referansı, sıralanmış verisi olarak kullanılır.

Uzak nesne değilse, bağımsız değişken uzak ana bilgisayara gönderilen baytlar halinde serileştirilir ve yerel nesnenin bir kopyası olarak yeniden oluşturulur. Argüman ne Uzak ne de Serileştirilebilir değilse, saplama istemciye bir java.rmi.MarshalException gönderir.

Yöntem bağımsız değişkenlerinin sıralanması başarılı olursa, istemci tarafı uzak başvuru katmanı, saplamadan uzak başvuruyu ve sıralanmış bağımsız değişkenleri alır. Bu katman, istemci talebini, kullanılan uzak nesne iletişiminin türüne göre düşük seviyeli RMI taşıma isteklerine dönüştürür.

RMI’da uzak nesneler (potansiyel olarak) noktadan noktaya nesne referansları, çoğaltılmış nesneler veya çok noktaya yayın nesneleri gibi birkaç farklı iletişim stili altında çalışabilir. Uzak referans katmanı, belirli bir uzak nesne için hangi iletişim stilinin etkin olduğunu bilmekten ve ilgili taşıma düzeyi isteklerini oluşturmaktan sorumludur.

RMI’nin şu anki sürümünde, kutudan çıktığı gibi sağlanan tek iletişim stili noktadan noktaya nesne referanslarıdır, dolayısıyla bu bölümde tartışacağımız tek stil budur. Bir noktadan noktaya iletişim için, uzak referans katmanı tek bir ağ düzeyinde istek oluşturur ve bunu kablo üzerinden istekle birlikte iletilen uzak referansa karşılık gelen tek uzak nesneye gönderir.

Sunucuda, sunucu tarafındaki uzak referans katmanı, taşıma seviyesi talebini alır ve bunu, referans verilen nesneyle eşleşen sunucu iskeleti için bir isteğe dönüştürür. İskelet, uzak isteği, yöntem bağımsız değişkenlerini sunucu ortamına ayırmayı ve bunları sunucu nesnesine geçirmeyi içeren gerçek sunucu nesnesindeki uygun yöntem çağrısına dönüştürür.

Tahmin edebileceğiniz gibi, sıralamayı bozma, istemci üzerindeki sıralama işleminin tersi prosedürüdür. Uzak referanslar olarak gönderilen argümanlar sunucuda yerel taslaklara dönüştürülür ve serileştirilmiş nesneler olarak gönderilen argümanlar orijinallerin yerel kopyalarına dönüştürülür.

Yöntem çağrısı bir dönüş değeri veya bir istisna oluşturursa, iskelet nesneyi istemciye geri taşınması için sıralar ve sunucu referans katmanı aracılığıyla iletir. Bu sonuç, istemci referans katmanı ve saplamadan geçtiği uygun aktarım protokolü kullanılarak geri gönderilir, saplama tarafından sıralanmaz ve son olarak uzak yöntemi çağıran istemci iş parçacığına geri gönderilir.


Web sitelerinizi, arama motorlarında en yukarı getirmek adına sizlere 3 adet paket öneriyoruz. Bu paketler sayesinde web siteleriniz aramalarda 1 yıl içerisinde en yukarıya tırmanacaktır. 

1) Backlink Paketi  50 $ (Yıllık Ücret)
2) Hızlandırma Paketi 300 $ (Yıllık Ücret)
3) Kelime Yönlendirme Paketi 150 $ (Aylık Ücret)


 

 

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

× Bize Whatsapp'tan Ulaşın