ΚΕΦΑΛΑΙΟ 17: Web Services Εισαγωγή

Σχετικά έγγραφα
Υπηρεσίες Ιστού (Web Services) ΜΙΧΑΛΗΣ ΜΑΛΙΑΠΠΗΣ

Υπηρεσιοστρεφής Αρχιτεκτονική SOA (Service Oriented Architecture)

Τεχνολογία Διοίκησης Επιχειρησιακών Διαδικασιών

Κατανεμημένα Συστήματα με Java. Ενότητα # 18: Υπηρεσίες Ιστού Διδάσκων: Γεώργιος Ξυλωμένος Τμήμα: Πληροφορικής

Σχεδίαση Εφαρμογών και Υπηρεσιών Διαδικτύου 10η Διάλεξη: Web Services

ΣΥΓΚΡΙΤΙΚΗ ΜΕΛΕΤΗ ΤΕΧΝΟΛΟΓΙΩΝ ΔΙΑΔΙΚΤΥΑΚΩΝ ΥΠΗΡΕΣΙΩΝ ΚΑΙ ΑΞΙΟΛΟΓΗΣΗ ΤΗΣ ΤΕΧΝΟΛΟΓΙΑΣ REST ΠΛΑΣΤΑΡΑΣ ΕΥΡΙΠΙΔΗΣ

Προγραμματισμός και Συστήματα στον Παγκόσμιο Ιστό Ενότητα 9: Web Services. Καθ. Ιωάννης Γαροφαλάκης Πολυτεχνική Σχολή Μηχανικών Η/Υ & Πληροφορικής

Αξιολόγηση Υπηρεσιών ιαδικτύου µέσω Περιπτώσεων Μελέτης

Introduction to JAX-WS. Φοιτητής : ηµόπουλος Κωνσταντίνος

BetaCMS. Επισκόπηση. BetaCONCEPT

Η Υλοποίηση της Επικοινωνίας. Κατανεµηµένα Συστήµατα

Διαδικτυακές Εφαρμογές. Ενότητα 2: Enterprise Java Beans και Java Server Faces Μιχάλας Άγγελος Βούρκας Δημήτριος Τμήμα Μηχανικών Πληροφορικής ΤΕ

* Enterprise Resource Planning ** Customer Relationship Management

Διπλωματική Εργασία. Μέλλιος Θωμάς, Πετρίδης Κοσμάς. Επιβλέπων Καθηγητής: Πρωτόγερος Νικόλαος

Εργαστηριακή Άσκηση 5

Ηλεκτρονικές υπηρεσίες προστιθέμενης αξίας (e-gov, e-commerce, e-learning, e-health) Τίτλος Μαθήματος

ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ

«Σημασιολογική Αναζήτηση Υπηρεσιών Ιστού βάση των δυνατοτήτων τους» Semantic Matching of Web Services Capabilities

Δίκτυα Υπολογιστών I

Υπηρεσίες Ιστού (Web Services) Τεχνολογία Διοίκησης Επιχειρησιακών Διαδικασιών

ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΜΕΤΑΠΤΥΧΙΑΚΟ ΔΙΠΛΩΜΑ ΕΙΔΙΚΕΥΣΗΣ (MSc) στα ΠΛΗΡΟΦΟΡΙΑΚΑ ΣΥΣΤΗΜΑΤΑ ΔΙΠΛΩΜΑΤΙKH ΕΡΓΑΣΙΑ

ΚΕΦΑΛΑΙΟ 1: Τα είδη των Δικτύων Εισαγωγή

Παρουσίαση Θερινού Σχολείου. Αριστεία ΕΛ/ΛΑΚ ΤΕΙ Αθήνας

ΕΠΑΝΑΛΗΠΤΙΚΟ ΤΕΣΤ ΣΤΙΣ ΕΝΟΤΗΤΕΣ

Πανεπιστήμιο Πειραιώς Τμ ή μα Ψήφιακώή ν Συστήμαή τών

Σύστημα Ηλεκτρονικού Πρωτοκόλλου. Σχεδιασμός Υποσυστημάτων

ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΕΙΡΑΙΩΣ

Ανάπτυξη Συστήματος Σύνθεσης Υπηρεσιών Ιστού

ΠΑΝΕΠΙΣΤΗΜΙΟ ΜΑΚΕΔΟΝΙΑΣ ΟΙΚΟΝΟΜΙΚΩΝ ΚΑΙ ΚΟΙΝΩΝΙΚΩΝ ΕΠΙΣΤΗΜΩΝ

Δικτυοκεντρικά Πληροφοριακά Συστήματα

Τμήμα του εθνικού οδικού δικτύου (Αττική οδός)

Τεχνολογία Διοίκησης Επιχειρησιακών Διαδικασιών Οδηγός Εργαστηρίου ΕΘΝΙΚΟ ΚΑΙ ΚΑΠΟΔΙΣΤΡΙΑΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΘΗΝΩΝ

ΥΠΗΡΕΣΙΕΣ ΙΣΤΟΥ ΚΑΙ ΕΦΑΡΜΟΓΕΣ

ΑΡΙΣΤΟΤΕΛΕΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΟΝΙΚΗΣ ΣΧΟΛΗ ΘΕΤΙΚΩΝ ΕΠΙΣΤΗΜΩΝ - ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ. WSDLBook:

Αρχιτεκτονικές κατανεμημένων συστημάτων. I. Sommerville 2006 Βασικές αρχές Τεχνολογίας Λογισμικού, 8η αγγ. έκδοση Κεφ. 12

Πίνακας Εικόνων. 22/04/2014 Έκδοση 3.0.1

Εισαγωγή Επανάληψη. ΤΕΙ Στερεάς Ελλάδας. ΣT Εξάμηνο, Κατεύθυνση Μηχανικών Δικτύων Τ.Ε. Τμήμα Μηχανικών Πληροφορικής Τ.Ε. Διαδικτυακός Προγραμματισμός

1.2.2 Το μοντέλο δικτύωσης TCP/IP 1 / 26

Εισαγωγή στη J2EE. Μέρος 2

ΠΛΗΡΟΦΟΡΙΑΚΑ ΣΥΣΤΗΜΑΤΑ

ANDROID Προγραμματισμός Εφαρμογών

ΠΤΥΧΙΑΚΗ ΕΡΓΑΣΙΑ ΜΕ ΘΕΜΑ:

Ταχύτητα, Απλότητα & Αξιοπιστία

Το Μέλλον για τα Συστήματα Διαχείρισης Ακτινολογικής Εικόνας (PACS)

Τι χρειάζεται ένας φοιτητής για τη σωστή παρακολούθηση και συμμετοχή στο μαθημα;

Web and HTTP. Βασικά Συστατικά: Web Server Web Browser HTTP Protocol

Διαγράμματα Κλάσεων στη Σχεδίαση

Αρχιτεκτονικές κατανεμημένων συστημάτων. I. Sommerville 2006 Βασικές αρχές Τεχνολογίας Λογισμικού, 8η αγγ. έκδοση Κεφ. 12

ΣΕΜΙΝΑΡΙΟ ΔΙΚΤΥΩΝ ΜΑΡΤΙΟΣ ΜΑΙΟΣ 2010 ΔΙΟΡΓΑΝΩΣΗ ΑΜΠΑΡΙΩΤΗΣ ΑΠΟΣΤΟΛΟΣ ΓΙΑΜΜΑΚΗΣ ΓΙΑΝΝΗΣ ΛΕΒΑΝΤΗΣ ΟΔΥΣΣΕΑΣ ΠΑΠΑΔΟΠΟΥΛΟΣ ΜΑΡΙΟΣ ΨΙΑΧΟΣ ΧΡΗΣΤΟΣ

Σύστημα Αναθέσεων. Σχεδιασμός Υποσυστημάτων

Σχολή Προγραµµατιστών Ηλεκτρονικών Υπολογιστών (ΣΠΗΥ) Τµήµα Προγραµµατιστών Σειρά 112

Τεχνικές Προδιαγραφές ιαλειτουργικότητας

7.4 Πρωτόκολλο UDP. 3. Στη περίπτωση που ένα μήνυμα χωράει σε ένα τμήμα, χρησιμοποιούμε το πρωτόκολλο TCP.

Πρωτόκολλα Επικοινωνίας και Τείχος Προστασίας

ΥΠΟΒΟΛΗ ΠΡΟΤΑΣΕΩΝ / ΠΑΡΑΤΗΡΗΣΕΩΝ ΕΠΙ ΤΟΥ ΣΧΕΔΙΟΥ ΔΙΑΚΗΡΥΞΗΣ ΤΟΥ ΕΡΓΟΥ ΣΤΟ ΠΛΑΙΣΙΟ ΤΗΣ ΔΗΜΟΣΙΑΣ ΔΙΑΒΟΥΛΕΥΣΗΣ ΑΠΟ 08/10/2013 ΜΕΧΡΙ 22/10/2013

Δίκτυα Υπολογιστών. Το επίπεδο εφαρμογής (application layer) Κ. Βασιλάκης

ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ

Σχεδίαση και Ανάπτυξη Ιστότοπων

Σχεδίαση Middleware Εγχειρίδιο Μελέτης

ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΑ ΕΡΓΑΛΕΙΑ ΓΙΑ ΤΟ ΔΙΑΔΙΚΤΥΟ

Λογισμικό Open Source στις Υπηρεσίες των Βιβλιοθηκών του Πανεπιστημίου Αθηνών

Επικοινωνία Client/Server Απομακρυσμένη Κλήση Διαδικασιών

ασθενών με χρήση XML Web Services και BPEL

Τι είναι ένα δίκτυο υπολογιστών; Αρχιτεκτονική επιπέδων πρωτοκόλλων. Δικτυακά πρωτόκολλα

Διάλεξη 1. Εισαγωγή Επισκόπηση άσκησης

Κεφάλαιο 9: Τεχνολογία Υπηρεσιών Ιστού και Ηλεκτρονικό Εμπόριο

Σύγχρονα εργαλεία και τεχνολογίες ανάπτυξης I.S. Το Microsoft.NET

Ανάπτυξηλογισμικού υλοποίησης του ανοικτού πρότυπου EPCALEv1.1 για εφαρμογές RFID

Ευχαριστίες. Σελίδα 3

Περίληψη ιπλωµατικής Εργασίας

ΣΥΓΚΡΙΤΙΚΗ ΜΕΛΕΤΗ ΤΕΧΝΟΛΟΓΙΩΝ ΔΙΑΔΙΚΤΥΑΚΩΝ ΥΠΗΡΕΣΙΩΝ ΚΑΙ ΑΞΙΟΛΟΓΗΣΗ ΤΗΣ ΤΕΧΝΟΛΟΓΙΑΣ REST

ΕΞΕΤΑΖΟΜΕΝΟ ΜΑΘΗΜΑ : ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΤΑΞΗ : Γ ΛΥΚΕΙΟΥ ΣΠΟΥΔΕΣ ΟΙΚΟΝΟΜΙΑΣ & ΠΛΗΡΟΦΟΡΙΚΗΣ

Βασίλειος Κοντογιάννης ΠΕ19

7.2 Τεχνολογία TCP/IP

Ηλεκτρονική Διακυβέρνηση & Ηλεκτρονικές Υπηρεσίες Μοντέλα και πρότυπα

ΑΠΟΤΕΛΕΣΜΑΤΑ ΔΙΑΒΟΥΛΕΥΣΗΣ (Το έντυπο αποστέλλεται στην ΕΥΔ ΕΠ ΨΣ)

Καθηγητής Κλεάνθης Θραμπουλίδης

ίκτυα υπολογιστών Στόχοι κεφαλαίου ίκτυα

Χαρακτηρισµός Κατανεµηµένων Συστηµάτων

ΤΕΙ ΗΠΕΙΡΟΥ Τμήμα Τηλεπληροφορικής & Διοίκησης

Συγκριτική Μελέτη Αρχιτεκτονικών Σχεδίασης Διαδικτυακών Υπηρεσιών (Web Services)

Πύλη Φαρμακευτικών Υπηρεσιών Υπουργείου Υγείας Κύπρου. System Architecture Overview

Μαλούτα Θεανώ Σελίδα 1

Στόχοι. Υπολογιστικά συστήματα: Στρώματα. Βασικές έννοιες [7]

ΕΠΛ 001: ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΕΠΙΣΤΗΜΗ ΤΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ. Δίκτυα Υπολογιστών

Αρχιτεκτονική Υπηρεσιών Ιστού

Σχεδιασμός και Ανάπτυξη Διαδικτυακών Υπηρεσιών Αρχιτεκτονικής REST ΠΤΥΧΙΑΚΗ ΕΡΓΑΣΙΑ

ΟΙΚΟΝΟΜΙΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΘΗΝΩΝ ΤΜΗΜΑ ΔΙΟΙΚΗΤΙΚΗΣ ΕΠΙΣΤΗΜΗΣ ΚΑΙ ΤΕΧΝΟΛΟΓΙΑΣ. Τεχνολογίες και Εφαρμογές Διαδικτύου

Κεφάλαιο 3: Τεχνολογίες Πληροφορικής και Τηλεπικοινωνιών: Ιστορική Εξέλιξη, Σύγχρονες Τάσεις και Προβλέψεις

ΔΙΑΤΜΗΜΑΤΙΚΟ ΠΡΟΓΡΑΜΜΑ ΜΕΤΑΠΤΥΧΙΑΚΩΝ ΣΠΟΥΔΩΝ ΣΤΑ ΠΛΗΡΟΦΟΡΙΑΚΑ ΣΥΣΤΗΜΑΤΑ

ΤΕΛΟΣ 1ΗΣ ΑΠΟ 6 ΣΕΛΙΔΕΣ

Δίκτυα Υπολογιστών. Το επίπεδο εφαρμογής (application layer) Κ. Βασιλάκης

Αντικειμενοστρεφής Προγραμματισμός

ίκτυα - Internet Υπηρεσίες Internet O Παγκόσµιος Ιστός (World Wide Web) Ηλεκτρονική Αλληλογραφία ( ) Υπηρεσία FTP (File Transfer Protocol)

ΕΠΙΚΟΙΝΩΝΙΕΣ ΔΕΔΟΜΕΝΩΝ ΚΑΙ ΤΕΧΝΟΛΟΓΙΕΣ INTERNET

Παραθέτουμε τις παρακάτω διευκρινήσεις βάση των ερωτημάτων που υποβλήθηκαν από τους υποψηφίους αναδόχους μετά την δημοσίευση του διαγωνισμού.

SSL EDITOR: ΓΡΑΦΙΚΟ ΕΡΓΑΛΕΙΟ ΓΙΑ ΤΗ ΗΜΙΟΥΡΓΙΑ ΜΟΝΤΕΛΩΝ ΣΗΜΑΣΙΟΛΟΓΙΚΗΣ ΠΕΡΙΓΡΑΦΗΣ ΥΠΗΡΕΣΙΩΝ

ΑΠΟΘΕΤΗΡΙΟ ΕΦΑΡΜΟΓΩΝ ΥΠΠΕΘ ΚΑΙ ΕΠΟΠΤΕΥΟΜΕΝΩΝ ΦΟΡΕΩΝ (git.minedu.gov.gr)

ΤΕΧΝΟΛΟΓΙΑ ΔΙΚΤΥΩΝ ΕΠΙΚΟΙΝΩΝΙΩΝ 7ο ΚΕΦΑΛΑΙΟ

X-Order Client: ΟΔΗΓΙΕΣ ΓΙΑ ΤΗΝ ΕΝΕΡΓΟΠΟΙΗΣΗ ΤΗΣ ΕΦΑΡΜΟΓΗΣ σε ΔΧΣ Τερματικό

Transcript:

ΚΕΦΑΛΑΙΟ 17: Web Services 17.1. Εισαγωγή Με τον όρο WebService αναφερόμαστε σε ένα σύστημα λογισμικού το οποίο σχεδιάστηκε με τρόπο τέτοιο ώστε να υποστηρίζει την ανεμπόδιστη συνεργασία δύο μηχανών μέσω ενός δικτύου. Συνήθως οι υπηρεσίες δικτύου είναι απλά δικτυακά APIs τα οποία μπορούν να προσπελαστούν μέσω δικτύων, όπως για παράδειγμα το Internet, και να εκτελεστούν σε ένα απομακρυσμένο σύστημα το οποίο παρέχει τις εν λόγω υπηρεσίες. Ο ορισμός που δίνει στις δικτυακές υπηρεσίες το W3C εσωκλείει πολλά διαφορετικά συστήματα, αλλά συνήθως ο όρος χρησιμοποιείται και αναφέρεται σε clients και servers που επικοινωνούν διαμέσου του HTTP πρωτοκόλλου. Οι δικτυακές υπηρεσίες μπορούν να κατηγοριοποιηθούν σε μία από δύο κατηγορίες: BigWebServices και RESTfulWebServices. Οι BigWebServices χρησιμοποιούν μηνύματα XML τα οποία ακολουθούν το στάνταρ SOAP και είναι πολύ δημοφιλή σε συνήθεις enterprise συστήματα. Στα συστήματα αυτά, συνήθως υπάρχει μια περιγραφή, η οποία είναι αναγνώσιμη μόνο από μηχανές, των προσφερόμενων υπηρεσιών. Η περιγραφή αυτή είναι συνήθως γραμμένη σε μια γλώσσα προγραμματισμού που ονομάζεται WSDL (WebServicesDescriptionLanguage). Η γλώσσα αυτή δεν είναι κάποιο προαπαιτούμενο ενός τερματικού που υποστηρίζει SOAP, αλλά είναι για την αυτοματοποιημένη παραγωγή κώδικα από τους clients για πολλές εφαρμογές γραμμένες σε JAVA και.net. Προσφάτως, οι RESTfulWebServicesαρχίζουν να γίνονται και πάλι δημοφιλείς, ειδικά ανάμεσα στις εταιρίες οι οποίες ασχολούνται με το Internet. Οι υπηρεσίες αυτές συμφωνούν με τον ορισμό που δώσαμε στις προηγούμενες παραγράφους, και συνήθως συνεργάζονται πολύ καλύτερα με το HTTP από ότι οι βασισμένες σε SOAP υπηρεσίες. Επιπλέον οι υπηρεσίες που ανήκουν στην κατηγορία αυτή δεν χρειάζονται XML μηνύματα ή τον ορισμό διεπαφών τύπου WSDL. Η δικτυακές υπηρεσίες λοιπόν είναι ένα σύνολο από εργαλεία τα οποία μπορούν να χρησιμοποιηθούν με πολλούς τρόπους. Οι τρείς πιο συνήθεις τρόποι λειτουργίας είναι οι RPC, SOA και REST τις οποίες και θα περιγράψουμε παρακάτω.

17.2. Remote Procedure Calls (RPC) Σχήμα 19. Παράδειγμα Web Service.

17.3. Service Oriented Architecture Οι δικτυακές υπηρεσίες αυτές συνήθως χρησιμοποιούνται για την υλοποίηση μιας αρχιτεκτονικής σύμφωνα με τη SOA, όπου ο δομικός λίθος των επικοινωνιών είναι ένα μήνυμα και όχι μια υπηρεσία (όπως η προηγούμενη κατηγορία υπηρεσιών). Για τον λόγο αυτό συνήθως οι υπηρεσίες αυτές αποκαλούνται και υπηρεσίες message-oriented. Οι SOA δικτυακές υπηρεσίες υποστηρίζονται από τους περισσότερους σημαντικούς πωλητές λογισμικού και από αναλυτές στην βιομηχανία λογισμικού. Σε αντίθεση με τις RPC υπηρεσίες, οι SOA δεν είναι τόσο άρρηκτα συνδεδεμένες με κάποια γλώσσα προγραμματισμού, γιατί συγκεντρώνονται στην λειτουργικότητα και αποκρύπτουν από τους προγραμματιστές τις λεπτομέρειες της υλοποίησης των επιμέρους λειτουργιών.

17.4. Representational State Transfer Τέλος, οι RESTful δικτυακές υπηρεσίες προσπαθούν να μιμηθούν το HTTP και παρόμοια πρωτόκολλα με το να περιορίζουν τις διεπαφές τους σε ένα σύνολο καλά ορισμένων, στάνταρ λειτουργιών. Εδώ, η έμφαση δίνεται στην διεπαφή με κάποια resources, και όχι με κάποια μηνύματα ή με κάποιες λειτουργίες. Οι RESTful δικτυακές υπηρεσίες μπορούν να χρησιμοποιήσουν τις WSDL για να περιγράψουν ανταλλαγή μηνυμάτων τύπου SOAP διαμέσου του HTTP, το οποίο περιγράφει τις λειτουργίες, ή μπορεί να υλοποιηθεί με πιο αφηρημένο τρόπο πάνω από SOAP.

17.5. Σύνοψη Κεφαλαίου Βασικές Έννοιες Κλειδιά WebService: Ένα σύστημα λογισμικού το οποίο σχεδιάστηκε με τρόπο τέτοιο ώστε να υποστηρίζει την ανεμπόδιστη συνεργασία δύο μηχανών μέσω ενός δικτύου. Remote Procedure Calls (RPC): Οι υπηρεσίες αυτές είναι συνήθως μια συλλογή από κλήσεις σε ρουτίνες (τμήματα προγραμμάτων υπεύθυνα για συγκεκριμένες διεργασίες) γνωστές στους προγραμματιστές Service Oriented Architecture: O δομικός λίθος των επικοινωνιών είναι ένα μήνυμα και όχι μια υπηρεσία Representational State Transfer: Περιορίζουν τις διεπαφές τους σε ένα σύνολο καλά ορισμένων, στάνταρ λειτουργιών. Ερώτηση: 17.5.1. Τι συμβολίζουν τα αρχικά RPC; Remote Procedure Calls Representational Procedure Calls Repetitive Procedure Calls Ερώτηση : 17.5.2. Δώστε σχηματικά ένα παράδειγμα Web service. (Να χρησιμοποιήσετε το Attach) Ερώτηση : 17.5.3. Τι εννοούμε με τον όρο WebService Ερώτηση : 17.5.4. Η δικτυακές υπηρεσίες είναι ένα σύνολο από εργαλεία τα οποία μπορούν να χρησιμοποιηθούν με πολλούς τρόπους. Να γράψετε τους τρείς πιο συνήθεις τρόπους λειτουργίας. Ερώτηση : 17.5.5. Τι είναι οι υπηρεσίες RPC; Ερώτηση: 17.5.6. Τι συμβολίζουν τα αρχικά SOA στις δικτυακές υπηρεσίες ; Super Output Area Service Oriented Architecture Scottish Optoelectronics Association

Ερώτηση: 17.5.7. Οι SOA δικτυακές υπηρεσίες ονομάζονται και: multiplexer- oriented multifunction-oriented message-oriented Ερώτηση : 17.5.8. Ποια είναι η διαφορά στις RPC υπηρεσίες και υπηρεσίες SOA; Ερώτηση: 17.5.9. Με τον τίτλο Representational State Transfer ανφερόμαστε σε: BigWebServices RESTfulWebServices Internetservices