Σε αυτό το κεφάλαιο παρουσιάζονται θέματα σχετικά με την επικοινωνία μεταξύ των απομακρυσμένων διεργασιών και σχετικά με την απομακρυσμένη εκτέλεση εντολών προγράμματος. Παρουσιάζονται οι υπηρεσίες ασύγχρονης επικοινωνίας μέσω μηνυμάτων, ως βασική μέθοδος επικοινωνίας στα κατανεμημένα συστήματα, καθώς και η απομακρυσμένη εκτέλεση διεργασιών. Προς τούτο, εξετάζονται η (δια-)δικτύωση, τα πρωτόκολλα επικοινωνίας, οι υποδοχές (sockets), η απομακρυσμένη κλήση μεθόδων και η μεταβίβαση παραμέτρων σε αυτές, η σειριακοποίηση αντικειμένων, η κατασκευή απομακρυσμένων αντικειμένων, οι αναφορές προς τα αντικείμενα αυτά και οι εξυπηρετητές αντικειμένων. Τα προαναφερθέντα εξετάζονται διεξοδικά μέσα από την παρουσίαση των κυρίαρχων σήμερα πλατφορμών και τεχνολογιών, όπως είναι το Java RPC, το Java RMI, το CORBA και το DCOM, οι βασισμένες στο SOAP υπηρεσίες ιστού (Web Services), τα RESTful Web Services και η γλώσσα σύνθεσης υπηρεσιών ιστού BPEL. Στα παραδείγματα που χρησιμοποιούνται γίνεται χρήση της γλώσσας προγραμματισμού Java.
(EL)
In this chapter there is a presentation of topics related to communication between remote processes and remote execution of program commands. The services of asynchronous communication through messages are presented, as a basic method of communication in DS, as well as the remote execution of processes. To this end, (inter-) networking, communication protocols, sockets, remote method calls and passing parameters to them, serialization of objects, construction of remote objects, references to remote objects, and the object servers are examined. The above are thoroughly examined through the presentation of today’s dominant platforms and technologies, such as Java RPC, Java RMI, CORBA and DCOM, SOAP-based web services, Restful Web Services and the language BPEL for Web Services synthesis. The provided examples use the Java programming language.
(EN)