5,019 research outputs found

    PERBANDINGAN PEMROGRAMAN TERDISTRIBUSI REMOTE PROCEDURE CALL XML-RPC DENGAN REMOTE METHOD INVOCATION (RMI) STUDI KASUS OPERASI MATRIX PADA CITRA<br /> <br /> On The Comparison of Distributed Programming Using Remote Procedure Call XML-RPC and Remote Metho

    Get PDF
    ABSTRAKSI: Suatu program untuk menyelesaikan suatu permasalahan yang kompleks akan lebih mudah diimplementasikan secara modular. Setiap modul dalam program tersebut dapat didesain untuk menangani suatu operasi tertentu. Gabungan fungsional modul-modul suatu program nantinya akan mampu melakukan penyelesaian problem dari suatu program secara utuh. Konsep modularitas pada program memiliki keuntungan lain bagi programmer. Salah satunya adalah untuk menerapkan pemrograman terdistribusi. Dalam pemrograman terdistribusi, modul-modul program tidak harus berada di satu mesin komputer. Modul-modul program dapat diletakkan di beberapa node komputer yang terhubung dalam suatu jaringan. Untuk dapat berkomunikasi satu sama lain, modul-modul dalam program dapat menggunakan berbagai teknologi seperti socket, RMI(untuk Java) , CORBA, message oriented middleware atau pun Remote Procedure Call(RPC). Pada Tugas Akhir ini, pemrograman tedistribusi dibangun menggunakan teknologi Remote Procedure Call (RPC) dan Remote Method Invocation (RMI). Dari berbagai macam implementasi RPC, XML-RPC digunakan sebagai teknologi Remote Procedure Call-nya. Sedangkan implementasi RMI yang digunakan adalah Java-RMI. Hasil dari tugas akhir ini menunjukan bahwa secara umum Java-RMI memiliki waktu eksekusi yang lebih cepat dibanding program XML-RPC(baik Python ataupun Java). Sedangkan dalam implementasi XML RPC dengan Python dan Java, waktu eksekusi program dengan Java relatif lebih cepat daripada program dengan Python.Kata Kunci : Pemrograman terdistribusi (Distributed Programming), Remote Procedure Call(RPC), XML-RPC, Server, Client, Remote Method Invocation(RMI).ABSTRACT: To make a complex program, programmers usually divide the program into some modules in order to ease to be understood, to be solved, and to be built. Each of functionality of the program is usually represented by a module. The comprehensive work of the modules build a complete function of the program itself. Modularity concept of a program may give more than one advantages. One of them is that modularity concept enable programmers to build distributed programming. By using distributed programming, program&rsquo;s modules do not have to be in the same machine. These modules may be spread out in the computer nodes that are connected to the network. To enable them to communicate each other, a technology should be taken to bridge the connections among the modules. Technology such as socket, RMI (for Java), CORBA or Remote Procedure Call (RPC) may become the communication bridge among the modules. In this Final Assignment, a distributed programming is built using Remote Procedure Call and Remote Method Invocation. Among many implementations of RPC, this Final Assignment use XML-RPC as it Remote Procedure Calls. The RMI program is implemented using Java RMI. The result of the final assignment has shown that running distributed program under Java RMI is generally faster than distributed program under XML-RPC (on both Python and Java). However, XMLRPC with Java is relatively faster than Python.Keyword: distributed programming, Remote Procedure Call (RPC), XML-RPC, Server, Client, Remote Method Invocation(RMI)

    Adaptive online deployment for resource constrained mobile smart clients

    Get PDF
    Nowadays mobile devices are more and more used as a platform for applications. Contrary to prior generation handheld devices configured with a predefined set of applications, today leading edge devices provide a platform for flexible and customized application deployment. However, these applications have to deal with the limitations (e.g. CPU speed, memory) of these mobile devices and thus cannot handle complex tasks. In order to cope with the handheld limitations and the ever changing device context (e.g. network connections, remaining battery time, etc.) we present a middleware solution that dynamically offloads parts of the software to the most appropriate server. Without a priori knowledge of the application, the optimal deployment is calculated, that lowers the cpu usage at the mobile client, whilst keeping the used bandwidth minimal. The information needed to calculate this optimum is gathered on the fly from runtime information. Experimental results show that the proposed solution enables effective execution of complex applications in a constrained environment. Moreover, we demonstrate that the overhead from the middleware components is below 2%

    A Compiler and Runtime Infrastructure for Automatic Program Distribution

    Get PDF
    This paper presents the design and the implementation of a compiler and runtime infrastructure for automatic program distribution. We are building a research infrastructure that enables experimentation with various program partitioning and mapping strategies and the study of automatic distribution's effect on resource consumption (e.g., CPU, memory, communication). Since many optimization techniques are faced with conflicting optimization targets (e.g., memory and communication), we believe that it is important to be able to study their interaction. We present a set of techniques that enable flexible resource modeling and program distribution. These are: dependence analysis, weighted graph partitioning, code and communication generation, and profiling. We have developed these ideas in the context of the Java language. We present in detail the design and implementation of each of the techniques as part of our compiler and runtime infrastructure. Then, we evaluate our design and present preliminary experimental data for each component, as well as for the entire system

    IC-Service: A Service-Oriented Approach to the Development of Recommendation Systems

    Get PDF
    Recommendation systems have proven to be useful in various application domains. However, current solutions are usually ad-hoc systems which are tightly-coupled with the application domain. We present the IC-Service, a recommendation service that can be included in any system in a loosely coupled way. The implementation follows the principles of service oriented computing and provides a solution to various problems arising in recommendation systems, e.g. to the problem of meta-recommendation systems development. Moreover, when properly configured, the IC-Service can be used by different applications (clients), and several independent instances of the IC-Service can collaborate to produce better recommendations. Service architecture and communication protocols are presented. The paper describes also ongoing work and applications based on the IC-Service

    Software engineering and middleware: a roadmap (Invited talk)

    Get PDF
    The construction of a large class of distributed systems can be simplified by leveraging middleware, which is layered between network operating systems and application components. Middleware resolves heterogeneity and facilitates communication and coordination of distributed components. Existing middleware products enable software engineers to build systems that are distributed across a local-area network. State-of-the-art middleware research aims to push this boundary towards Internet-scale distribution, adaptive and reconfigurable middleware and middleware for dependable and wireless systems. The challenge for software engineering research is to devise notations, techniques, methods and tools for distributed system construction that systematically build and exploit the capabilities that middleware deliver

    The Clarens Web Service Framework for Distributed Scientific Analysis in Grid Projects

    Get PDF
    Large scientific collaborations are moving towards service oriented architecutres for implementation and deployment of globally distributed systems. Clarens is a high performance, easy to deploy Web Service framework that supports the construction of such globally distributed systems. This paper discusses some of the core functionality of Clarens that the authors believe is important for building distributed systems based on Web Services that support scientific analysis

    A Methodology for Engineering Collaborative and ad-hoc Mobile Applications using SyD Middleware

    Get PDF
    Todayā€™s web applications are more collaborative and utilize standard and ubiquitous Internet protocols. We have earlier developed System on Mobile Devices (SyD) middleware to rapidly develop and deploy collaborative applications over heterogeneous and possibly mobile devices hosting web objects. In this paper, we present the software engineering methodology for developing SyD-enabled web applications and illustrate it through a case study on two representative applications: (i) a calendar of meeting application, which is a collaborative application and (ii) a travel application which is an ad-hoc collaborative application. SyD-enabled web objects allow us to create a collaborative application rapidly with limited coding effort. In this case study, the modular software architecture allowed us to hide the inherent heterogeneity among devices, data stores, and networks by presenting a uniform and persistent object view of mobile objects interacting through XML/SOAP requests and responses. The performance results we obtained show that the application scales well as we increase the group size and adapts well within the constraints of mobile devices
    • ā€¦
    corecore