Java Remote Method Invocation Nedir? - 04-27-2014 by Burak - Burak Kutbay'?n Ki?isel Blog'u | - http://blog.burakkutbay.com Java Remote Method Invocation Nedir? by Burak - Pazar, Nisan 27, 2014 http://blog.burakkutbay.com/java-remote-method-invocation-nedir.html/ Remote Method Invocation bu yaz?da k?saca RMI olarak adl?raca??m?z kavramdan bahsedece?im. Remote Method Invocation yani RMI farkl? sunucularda olan metodlar?n ba?ka bir sunucudan ça??r?larak kullan?lmas?nda kullan?lmaktad?r. Java Nesnelerinin kullanmak için farkl? bir sunucuya/sanal makina'ya ba?lan?tyorsa buna biz Da??t?k Programlama diyoruz. RMI, Da??t?k Programlama yapmam?za olanak sa?lamaktad?r. RMI Mimarisi Katmanlardan olu?maktad?r. Bu katmanlar bize istek, cevaplama , yönlendirme i?lemlerini yapmaktad?r. Stub Uygulamadan gelen isteklerin ula?t??? yer Stub'dur. Stub Ba?lant? ile ba?lat?r JVM (Java Virtual Machine) ile ileti?ime geçer. Hatalar? yakalar, Skeleton'dan gelen sonuçlar? istemciye iletir. Skeleton Ula?n isteklerin ne oldu?una bakarak yönlendirme görevini sa?lar. Parametre okur, uzak nesneyi ça??r?r, metotdan gelen sonucu almakla görevlidir. Remote Reference Uzak'ta ki nesnelerin ne yapmas? gerekti?inin anla??ld??? yerdir. Skeleton'dan gelen istekleri Transport katman?n?n anlayaca?? ?ekle çevirir. Nesne i?lemlerinin yürütüldü?ü yerdir. Transport Ba?lant? ile ilgili i?lemlerin yap?ld??? katmand?r. TCP'nin kullan?lmas? i?lemlerini yapmaktad?r. RMI Örne?i import java.rmi.*; public interface Merhaba_arayuz extends Remote { public String mesaj() throws RemoteException; } 1/3 Java Remote Method Invocation Nedir? - 04-27-2014 by Burak - Burak Kutbay'?n Ki?isel Blog'u | - http://blog.burakkutbay.com import java.rmi.*; import java.rmi.server.*; public class Merhaba extends UnicastRemoteObject implements Merhaba_arayuz { private String mesaj; public Merhaba (String msg) throws RemoteException { mesaj = msg; } public String mesaj() throws RemoteException { return mesaj; } } import java.rmi.Naming; public class Merhaba_Server { public static void main (String[] argv) { try { Naming.rebind ("Merhaba", new Mesaj ("Merhabalar")); } catch (Exception e) { System.out.println ("Ba?lan?lamad?: " + e); } } } import java.rmi.Naming; public class Hello_istemci { 2/3 Java Remote Method Invocation Nedir? - 04-27-2014 by Burak - Burak Kutbay'?n Ki?isel Blog'u | - http://blog.burakkutbay.com public static void main (String[] argv) { try { Merhaba_arayuz mesaj =(Merhaba_arayuz) Naming.lookup ("//xxx.xx..xxx.xx/Merhaba"); System.out.println (mesaj.mesaj()); } catch (Exception e){ System.out.println ("Hata Olu?tu " + e);} } } _______________________________________________ PDF generated by Kalin's PDF Creation Station 3/3 Powered by TCPDF (www.tcpdf.org)