Asenkron Java Rmı

dc.contributor.advisor Erdoğan, Nadia tr_TR
dc.contributor.author Akın, Orhan tr_TR
dc.contributor.department Bilgisayar Mühendisliği tr_TR
dc.contributor.department Computer Engineering en_US
dc.date 2009 tr_TR
dc.date.accessioned 2009-06-30 tr_TR
dc.date.accessioned 2015-04-07T13:59:31Z
dc.date.available 2015-04-07T13:59:31Z
dc.date.issued 2009-06-30 tr_TR
dc.description Tez (Yüksek Lisans) -- İstanbul Teknik Üniversitesi, Fen Bilimleri Enstitüsü, 2009 tr_TR
dc.description Thesis (M.Sc.) -- İstanbul Technical University, Institute of Science and Technology, 2009 en_US
dc.description.abstract Senkron çalışan Java RMI’ın senkron çağrı modeli uzun zaman alan uzak yordam çağrıları için ölçeklenebilirlik sorunları yaratmaktadır. Asenkron çağrılar sayesinde, istemci çağrıyı yürüttükten sonra sunucu çağrıyı işlerken gereksiz yere beklemez ve çalışmasına devam edebilmektedir. Bu çalışmada java uzak yordam çağırma yöntemleri üstüne asenkron olarak uzak yordam çağırmamızı sağlayacak bir yazılım çatısının tanımını yapıp gerçeklemesini anlatacağız. Dışarıdan bakacak olursak, java programlama dili ile yazılmış, çoğu zaman farklı fiziksel yerlerde bulunan farklı sanal makineler üzerinde yaşayan ve birbirleri ile RMI ile haberleşen istemci ve sunucu programlar bulunmaktadır. Konu üzerinde asenkronluk özelliğin eklenmesi için yapılmış önceki çalışmalara bakacak olursak; benimsenen yöntemler istemci vekilin ön işlemden geçirilmesi, uzak nesnelerin veya uzak nesne vekillerinin değiştrilmesi ya da Sun’ın Java Sanal Makinesi’nin değiştirilmesi gibi pek de kolay olmayan çalışmalar gerektirmektedirler. Bu çalışmada Java’nın iplik havuzu ve yansıtma gibi becerilerinden yararlanarak, kendi uzak yordam çağırma kütüphanesinin üstüne asenkron uzak yordam çağırma yazılım çatısı gerçeklemekteyiz. Çalışmamız Java dışında farklı bir araç, ön işleme, özel derleyici gerektirmemesi, hali hazırda geliştirilmiş olan eski uzak nesnelerde değişikliğe gerek duymayıp onlarla sorunsuz entegre çalışabilmesi açışından önceki çalışmalara göre farklılık göstermektedir. Asenkron yazılım çatısının kullanımı gerçek dünya problemlerinin çözümünde ne şekilde kullanıldığı, açık kod örnekleriyle verilmektedir. Java’nın standart uzak yordam çağırma yöntemine göre nasıl kazanç sağladığımız açıkça ortaya konup, java çok iplikli programlama ve yansıtma yöntemlerinin performans kazanmak için optimize edilme yöntemleri karşılaştırmalar ve sonuçlarla ortaya konmaktadır. tr_TR
dc.description.abstract Java RMI’s synchronous invocation model may cause scalability challenges when long duration invocations are targeted. An asynchronous invocation allows the client to continue with its computation after dispatching a call, thus eliminating the need to wait idle while its request is being process by a remote server. In this study we define and implement an execution framework which extends Java RMI functionality with asynchrony. From out of the box point of view, there is a java client program and a server program both written in java programming language and living in different virtual machines that can be in different physical locations and using Java’s RMI (Remote Method Invocation) technology to communicate. Considering previous work carried on this topic to achieve asynchrony on Java’s RMI special preprocessing of the client stub, modification of the remote objects or stubs or modification of the Sun’s Java VM (virtual machine) is required which is not straight forward since Sun does not provide built-in mechanisms for those operations. In this study, we implemented an asynchronous RMI execution framework on the top of RMI technology, using the thread pooling capability and the reflection mechanism of Java. It differs from previous work as it does not require any external tool, preprocessor, or compiler and it may be integrated with previously developed software as no modification of target remote objects is necessary. Brief code examples with real life problems will be given with the usage of the asynchronous RMI framework, obvious performance gain over standard RMI calls will be shown and the techniques which were used to optimize Java’s multithreading and reflection in this study will be explained briefly with comparisons and results. en_US
dc.description.degree Yüksek Lisans tr_TR
dc.description.degree M.Sc. en_US
dc.identifier.uri http://hdl.handle.net/11527/343
dc.publisher Fen Bilimleri Enstitüsü tr_TR
dc.publisher Institute of Science and Technology en_US
dc.rights İTÜ tezleri telif hakkı ile korunmaktadır. Bunlar, bu kaynak üzerinden herhangi bir amaçla görüntülenebilir, ancak yazılı izin alınmadan herhangi bir biçimde yeniden oluşturulması veya dağıtılması yasaklanmıştır. tr_TR
dc.rights İTÜ theses are protected by copyright. They may be viewed from this source for any purpose, but reproduction or distribution in any format is prohibited without written permission. en_US
dc.subject java RMI tr_TR
dc.subject uzak yordam çağırma tr_TR
dc.subject asenkron haberleşme tr_TR
dc.subject yansıtma tr_TR
dc.subject java RMI en_US
dc.subject remote method call en_US
dc.subject asynhronous communication en_US
dc.subject reflection en_US
dc.title Asenkron Java Rmı tr_TR
dc.title.alternative Asynchronous Java Rmi en_US
dc.type Thesis en_US
dc.type Tez tr_TR
Dosyalar
Orijinal seri
Şimdi gösteriliyor 1 - 1 / 1
thumbnail.default.placeholder
Ad:
9645.pdf
Boyut:
479.36 KB
Format:
Adobe Portable Document Format
Açıklama
Lisanslı seri
Şimdi gösteriliyor 1 - 1 / 1
thumbnail.default.placeholder
Ad:
license.txt
Boyut:
3.14 KB
Format:
Plain Text
Açıklama