Supporting multiplatform applications with YA-RPC
Supporting multiplatform applications with YA-RPC
diploma thesis (DEFENDED)

View/ Open
Permanent link
http://hdl.handle.net/20.500.11956/48284Identifiers
Study Information System: 47790
Collections
- Kvalifikační práce [11322]
Author
Advisor
Referee
Yaghob, Jakub
Faculty / Institute
Faculty of Mathematics and Physics
Discipline
Software systems
Department
Department of Software Engineering
Date of defense
5. 9. 2011
Publisher
Univerzita Karlova, Matematicko-fyzikální fakultaLanguage
English
Grade
Very good
Keywords (Czech)
YaRpc, vzdálené volání procedur, distribuované systémyKeywords (English)
YaRpc, remote procedure call, distributed systemNázev práce: Supporting multiplatform applications with YA-RPC Autor: František Kovařík Katedra: Katedra softwarového inženýrství Vedoucí diplomové práce: RNDr. Petr Hnětynka, Ph.D. E-mail vedoucího: hnetynka@d3s.mff.cuni.cz Abstrakt: Během posledních tří desetiletí se vzdálené volání procedur (RPC) stalo oblíbeným způsobem pro komunikaci mezi počítači a procesy, využívaným v mnoha různých distribuovaných systémech. I přes velké množství RPC protokolů a implementací vyvinutých během těchto let, ani jeden systém nenabízí veškeré podstatné funkce a zároveň uživatelsky přívětivé rozhraní pro programování aplikací. V této práci představíme Yet Another Remote Procedure Call - YaRpc - specifikaci flexibilního a uživatelsky přívětivého middleware, který nabízí pokročilé funkce jako např. rozšiřitelnost a nezávislost na transportním či komunikačním protokolu, zpětná volání a konfigurovatelnou obsluhu volání metod. Následně popíšeme YaRpc Native Protocol (YNP), což je nový, minimalistický a výkonný RPC protokol s bohatou množinou funkcí. Dále představíme nativní implementaci YaRpc standardu a YNP protokolu v Javě a .NET Frameworku, a porovnáme jejich použití vůči protokolům jako je Java RMI, .NET Remoting a SOAP webové služby. Klíčová slova: YaRpc, vzdálené volání procedur, distribuované systémy
Title: Supporting multiplatform applications with YA-RPC Author: František Kovařík Department: Department of Software Engineering Supervisor: RNDr. Petr Hnětynka, Ph.D. Supervisor's e-mail address: hnetynka@d3s.mff.cuni.cz Abstract: Over the last three decades, Remote Procedure Call (RPC) has become a popular inter-computer and inter-process communication paradigm widely used by a variety of interconnected computer systems. Even though a number of RPC protocols and implementations evolved over those years, no single system offers a significant set of features, while providing an easy-to-use application programming interface. In this thesis, we present Yet Another Remote Procedure Call - YaRpc, a specification of a flexible and programmer friendly middleware that offers advanced features such as pluggable transports and protocols, callbacks, and configurable method dispatch. Additionally, we define YaRpc Native Protocol (YNP), a new light-weight high-performance RPC protocol with a rich set of features. We provide a native implementation of both YaRpc middleware and YNP protocol for Java and .NET Framework, and compare its usability with Java RMI, .NET Remoting and SOAP web services. Keywords: YaRpc, remote procedure call, distributed system