Uzak Yöntem Çağırma – Blog Yazma – Web Tasarımı Yapımı – Web Tasarımı YouTube Videosu Yapımı – Web Sitesi Tasarlama Fiyatları

Uzak Yöntem Çağırma
Bu yazımız, Java Uzak Yöntem Çağırma (RMI) API Java’nın uzak nesneler oluşturmaya ve kullanmaya yönelik yerel şemasını inceler.
Java RMI aşağıdaki öğeleri sağlar:
- Uzak nesnelere istemci arabirimleri veya saplamalar
- Ağdaki nesneleri bulmak için bir uzak nesne kaydı
- Uzak nesneler ve istemcileri arasındaki iletişim için bir ağ protokolü
- İsteğe bağlı olarak uzak nesneleri otomatik olarak oluşturmak (etkinleştirmek) için bir tesis
Bu öğelerin her biri (sonuncusu hariç), java.rmi paketinde ve RMI API’sini oluşturan alt paketlerinde kendisi için tanımlanmış bir Java arabirimine sahiptir. Bu arabirimleri kullanarak, ağdaki ana bilgisayarlarda bulunan dağıtılmış bir uygulama oluşturmak için uzak nesneler ve bunları kullanan istemciler geliştirebilirsiniz.
RMI’ye Giriş
RMI, temel Java ortamında yerleşik olarak bulunan dağıtılmış nesne sistemidir. RMI’yi, ağdaki uzak ana bilgisayarlarda Java sanal makinelerinde gerçekten çalışan nesnelerle etkileşim kurmanıza izin veren yerleşik bir Java tesisi olarak düşünebilirsiniz.
RMI ile, uzak bir işlemde “yaşayan” bir nesneye referans alabilir ve kodunuzla aynı sanal makine içinde çalışan yerel bir nesneymiş gibi, üzerinde yöntemleri çağırabilirsiniz.
RMI, JDK’nın 1.1 Sürümünde çekirdek Java API’sine eklendi (ve Java 2 platformunun 1.2 Sürümü için geliştirildi), dağıtılmış uygulama geliştirmede dağıtılmış nesneler için kritik destek ihtiyacının farkına varıldı. RMI’den önce, dağıtılmış bir uygulama yazmak, iki uzak işlem arasında mesajları ve verileri iletmek için “ham” bir iletişim kanalının kullanıldığı temel soket programlamasını içeriyordu.
Artık, RMI ve dağıtılmış nesnelerle, bir nesneyi uzak nesne olarak “dışa aktarabilirsiniz”, böylece diğer uzak işlemler/aracılar ona doğrudan bir Java nesnesi olarak erişebilir.
Bu nedenle, dağıtılmış uygulamanızdaki işlemler arasında düşük seviyeli bir mesaj protokolü ve veri iletim formatı tanımlamak yerine, “protokol” olarak Java arayüzlerini kullanırsınız ve dışa aktarılan yöntem argümanları veri iletim formatı haline gelir.
Dağıtılmış nesne sistemi (bu durumda RMI), uzak yöntem çağrılarınızı yapmak için gereken tüm temel ağ iletişimini yönetir Java RMI, yalnızca Java dağıtılmış bir nesne şemasıdır; RMI tabanlı dağıtılmış uygulamadaki nesnelerin Java’da uygulanması gerekir.
Diğer bazı dağıtılmış nesne şemaları, özellikle de CORBA, dilden bağımsızdır; bu, nesnelerin tanımlanmış bir bağlamaya sahip herhangi bir dilde uygulanabileceği anlamına gelir. Örneğin CORBA ile diğer dillerin yanı sıra C, C++, Java, Smalltalk ve Ada için bağlamalar mevcuttur.
Java Nesne Yönelimli PROGRAMLAMA örnek sorular
java’nın nesneye yönelik özellikleri
Java PDF Türkçe
Java Nesne Yönelimli programlama örnekleri
Java nesne Tabanlı PROGRAMLAMA Ders Notları
Java Ders Notları PDF
Herkes için Java pdf
java’da derleme işlemi hangi uygulama ile yapılır?
RMI’nin avantajları, öncelikle “Java-yerel” olması gerçeği etrafında döner. RMI, temel Java API’sinin bir parçası olduğundan ve Java VM içindeki Java nesneleriyle doğrudan çalışmak üzere oluşturulduğundan, uzak nesne olanaklarının bir Java uygulamasına entegrasyonu neredeyse sorunsuzdur. RMI-etkin nesneleri gerçekten yerel Java ortamında yaşıyorlarmış gibi kullanabilirsiniz.
Ve Java RMI, hem istemci hem de sunucunun Java nesneleri olduğu varsayımı üzerine kurulduğundan, RMI, uzaktan dışa aktarılan nesnelerin dağıtılmış çöp toplamasını sağlamak için standart Java VM’nin dahili çöp toplama mekanizmalarını genişletebilir.
Bazıları Java ile yazılmış ve bazıları yazılmamış heterojen bileşenlere sahip dağıtılmış bir uygulamanız varsa, birkaç seçeneğiniz vardır. Java Yerel Arabirimi’ni (JNI) kullanarak Java olmayan kodu RMI etkin Java nesneleriyle sararak RMI’yi kullanabilirsiniz.
Bu bölümün sonunda, size nerede yararlı olabileceği ve nerede olmayacağı konusunda bir fikir vermek için bu ilk seçeneği biraz ayrıntılı olarak tartışacağız. Başka bir seçenek, CORBA gibi dilden bağımsız nesne arabirimlerini destekleyen başka bir nesne dağıtım şeması kullanmaktır.
“Java IDL”, Java 2 SDK’da bulunan CORBA’ya yönelik Java arabirimini kapsar. Üçüncü bir seçenek, RMI nesnelerinin IIOP üzerinden uzak CORBA nesneleriyle doğrudan iletişim kurmasını sağlayan yeni RMI/IIOP işlevselliğini içerir. Bu seçeneği ayrıca bu bölümün sonunda biraz ayrıntılı olarak tartışıyoruz.
Eylemdeki RMI
RMI kullanmanın ayrıntılarını incelemeye başlamadan önce, iş yerindeki basit bir RMI uzak nesnesine bakalım. Bir tür banka hesabını temsil eden bir Hesap nesnesi oluşturabilir ve ardından uzak istemcilerin (örneğin, ATM’ler, bir bilgisayarda çalışan kişisel finans yazılımı) ona erişebilmesi ve işlemleri gerçekleştirebilmesi için RMI’yi uzak bir nesne olarak dışa aktarmak için kullanabiliriz.
İlk adım, uzak nesnemiz için arabirimi tanımlamaktır. Örnek 3−1, Hesap arayüzünü gösterir. Java.rmi.Remoteinterface’i genişlettiği için bunun bir RMI nesnesi olduğunu söyleyebilirsiniz. Bunun uzaktan erişim için olduğunu gösteren başka bir sinyal, her yöntemin bir java.rmi.RemoteException oluşturabilmesidir. Hesap arayüzü, hesap adını ve bakiyesini alma ve para yatırma, çekme ve transfer yapma yöntemleri içerir.
Sonraki adım, gösterilen AccountImpl sınıfına yol açan bu arabirimin bir uygulamasını oluşturmaktır. Bu sınıf, Hesap arabiriminde listelenen tüm yöntemleri uygular ve oluşturulacak yeni hesabın adını alan bir kurucu ekler.
AccountImpl sınıfının Account arabirimini uyguladığına, ancak java.rmi.UnicastRemoteObject sınıfını da genişlettiğine dikkat edin. Bu RMI sınıfı, sunucu nesneleri için bazı temel uzak işlevler sağlar.
Uzak arabirim ve bunun uygulanması tamamlandıktan sonra, her iki Java dosyasını da favori Java derleyicinizle derlemeniz gerekir. Bu yapıldıktan sonra, AccountImpl nesnesi için bir istemci saplaması ve bir sunucu iskeleti oluşturmak üzere RMI saplaması/iskelet derleyicisini kullanırsınız.
Saplama ve iskelet, istemci uygulaması ile sunucu nesnesi arasındaki iletişimi yönetir. Sun’ın Java SDK’sı ile RMI derleyicisine rmic adı verilir ve bu örnek için onu şu şekilde çağırabilirsiniz.
Saplama ve iskelet sınıfları, −d seçeneği (bu durumda/home/classes) tarafından verilen dizinde oluşturulur ve saklanır. Bu örnek, RMI derleyicisini çalıştırmadan önce AccountImpl sınıfının zaten CLASSPATH’nizde olduğunu varsayar.
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)