Εμφάνιση απλής εγγραφής

Υλοποίηση εφαρμογής restful web-service σε spring framework με οπτικοποίηση metrics σε prometheus και grafana

dc.contributor.advisorΑλέπης, Ευθύμιος
dc.contributor.authorΚρεούζος, Ανδρέας
dc.date.accessioned2022-12-20T09:13:51Z
dc.date.available2022-12-20T09:13:51Z
dc.date.issued2022-11
dc.identifier.urihttps://dione.lib.unipi.gr/xmlui/handle/unipi/14925
dc.identifier.urihttp://dx.doi.org/10.26267/unipi_dione/2347
dc.description.abstractΗ δημιουργία του Διαδικτύου[1] αποτέλεσε το λίκνο για την επιστήμη της μετάδοσης της πληροφορίας, αρχής γενομένης στα τέλη της δεκαετίας του 60 με την δημιουργία του project ARPANET. Η εξέλιξη του τελευταίου καθώς και η δημιουργία του Παγκόσμιου Ιστού από τον Tim Berners Lee στα τέλη της δεκαετίας του 80, έφερε την επανάσταση, το μέγεθος της οποίας συνεχίζει να ανακαλύπτεται και σήμερα με νέες τεχνολογίες και υπηρεσίες στην διάθεση των ανθρώπων. Αναμφισβήτητα το Διαδίκτυο θεωρείται ως το πλέον κοινωνικό αγαθό στις υπηρεσίες των πολιτών ενώ προβλέπονται ειδικές μέριμνες έτσι ώστε να γίνεται παντού προσβάσιμο. Ειδικά κονδύλια και επενδύσεις έχουν ήδη δοθεί και συνεχίζουν δίδονται από κυβερνητικούς και οργανισμούς τηλεπικοινωνιών, με σκοπό την ανάπτυξη σύγχρονων δικτύων υψηλών ταχυτήτων με κύρια τεχνολογία αυτής των οπτικών ινών κατ’ οίκων (Fiber To The Home - FTTH). Όλα τα ανωτέρω σε συνδυασμό με την είσοδο της ανθρωπότητας στην 4η Βιομηχανική Επανάσταση, η οποία συντελεί στην όλο και μεγαλύτερη ψηφιοποίηση των υπηρεσιών και των διαδικασιών, όπου διέπονται απλές και καθημερινές λειτουργίες του ανθρώπινου πληθυσμού, κατέστησε εφικτή την δημιουργία του Διαδικτύου των Πραγμάτων (IoT). Η ανάπτυξη αυτή, απαιτεί με την σειρά της, μια ακόμη μεγαλύτερη ροή πληροφοριών από και προς σε συσκευές, οι οποίες απεικονίζουν και επεξεργάζονται τα δεδομένα αυτά, με στόχο την έγκαιρη ενημέρωση των χρηστών, απρόσκοπτα και σε πραγματικό χρόνο. Καταλυτικό ρόλο στην επίτευξη των στόχων της 4ης Βιομηχανικής Επανάστασης αλλά και του Διαδικτύου των Πραγμάτων, εκτός των πολλών διαφορετικών τεχνολογιών, έπαιξε και συνεχίζει να παίζει η ανάπτυξη των υπηρεσιών διαδικτύου μέσω των πρωτοκόλλων SOAP και REST. Υπηρεσίες με ιδιαίτερη βαρύτητα στην μετάδοση και επεξεργασία δεδομένων, με σκοπό την επίτευξη των προαναφερθέντων στόχων. Στην παρούσα διατριβή, θα αποτυπωθεί επι τω πρακτέω η υλοποίηση μιας υπηρεσίας διαδικτύου με χρήση της γλώσσας προγραμματισμού JAVA υπό το πρωτόκολλο REST, κάνοντας εφαρμογή του πιο διαδεδομένου περιβάλλοντος δημιουργίας υπηρεσιών διαδικτύου, ήτοι του Spring Boot. Κύριος σκοπός μέσα από την υλοποίηση αυτή, είναι η δημιουργία μιας εφαρμογής, η οποία θα μπορεί να λαμβάνει στην είσοδο της, δεδομένα απ’ οποιαδήποτε εξωτερική διεπαφή API, να τα επεξεργάζεται και να αποτυπώνει στην έξοδο της, αποτελέσματα που αφορούν το πεδίο ενδιαφέροντος των εκάστοτε χρηστών. Υπό τις παραδοχές αυτές, η συγγραφή του παρόντος εγγράφου ξεκινά με το πρώτο κεφάλαιο να αναφέρεται σε εισαγωγικές έννοιες περί των υπηρεσιών JAVA WEB, με ιδιαίτερη έμφαση στα δύο πρωτοκόλλα που αναφέρθηκαν στις προηγούμενες παραγράφους. Θα πραγματοποιηθεί στοιχειοθέτηση ως προς την τελική χρήση του πρωτοκόλλου REST και εν συνεχεία, θα γίνει μια σύντομη εισαγωγή στο framework Spring και τα οφέλη που προκύπτουν από την χρήση του . Για λόγους ευκολότερης πρόσβασης στην βιβλιογραφία της παρούσας διατριβής, θα γίνεται χρήση bookmarks τα οποία θα λειτουργούν ως υπερσύνδεσμοι προς την τελευταία. Το δεύτερο κεφάλαιο συνθέτει την εγκαθίδρυση των στόχων του παρόντος έργου, αρχής γενομένης με την υλοποίηση μιας ανάλυσης απαιτήσεων. Κατά την διεξαγωγή τους, θα προκύψει η ανάγκη για την κατανάλωση δύο εξωτερικών APIs. Μέσα από τo συνονθύλευμα αυτό, θα κατασκευασθεί ένα διάγραμμα τύπου χάρτη, για την κατανόηση των βημάτων και της αλληλουχίας των συστατικών που θα απαρτίσουν το τελικό αποτέλεσμα. Το τρίτο κεφάλαιο, αποτελεί το σημείο τομής μεταξύ της θεωρίας μέχρι και την τελική υλοποίηση, αφού εκεί καταγράφονται οι τεχνολογίες και τα εργαλεία που χρησιμοποιήθηκαν. Θα δοθεί ιδιαίτερη βαρύτητα στην ασφάλεια της εφαρμογής, με υλοποίηση Spring Security σε πρωτόκολλο HTTPS και συστήματος αυθεντικοποίησης χρηστών μέσω συστήματος Email Verification. Σε ειδική ενότητα, θα αποτυπωθούν τα είδη των κλάσεων από τα οποία συνήθως αποτελείται ένα project Spring Boot και θα δοθούν επεξηγήσεις στα annotations που έλαβαν χώρα. Στο τέταρτο κεφάλαιο, αναλαμβάνεται η κατασκευή DevOps διαδικασιών με τις πλατφόρμες Prometheus και Grafana, να έχουν πρωταγωνιστικό ρόλο. Θα δοθούν λεπτομερείς επεξηγήσεις ως προς την χρήση αυτών μέσω Docker και τα οφέλη που προκύπτουν με την αποτύπωση metrics και γραφικών dashboards. Η συνολική υλοποίηση έγινε μέσω WSL Ubuntu σε Windows 11 OS. Τέλος στο πέμπτο κεφάλαιο, γίνεται η τελική χρήση των δύο API υπηρεσιών που καταναλώθηκαν εντός της εφαρμογής. Με εικόνες τύπου print screen δίνονται οι κατευθυντήριες γραμμές και η ακολουθία των HTML σελίδων πάνω στις οποίες απεικονίζονται τα καταναλισκόμενα αποτελέσματα από τις δύο APIs.el
dc.format.extent122el
dc.language.isoelel
dc.publisherΠανεπιστήμιο Πειραιώςel
dc.titleΥλοποίηση εφαρμογής restful web-service σε spring framework με οπτικοποίηση metrics σε prometheus και grafanael
dc.title.alternativeData processing by implementation of restful api web service in spring framework with metrics visualization in prometheus and grafanael
dc.typeMaster Thesisel
dc.contributor.departmentΣχολή Τεχνολογιών Πληροφορικής και Επικοινωνιών. Τμήμα Πληροφορικήςel
dc.description.abstractENThe creation of the Internet[1] has been identified as the cradle of the science of information transmission, beginning in the late 1960s with the creation of the ARPANET project. The evolution of the latter as well as the creation of the World Wide Web by Tim Berners Lee in the late 80's, brought the revolution, the magnitude of which continues to be discovered today with new technologies and services available to the people. Undoubtedly, the Internet is considered as the most social good in the services of the citizens while special arrangements are provided so that it becomes accessible everywhere. Special funds and investments have already been given and continue to be given by government and telecommunications organizations, with the aim of developing modern high-speed networks with the main technology of this, the fiber optics at home (Fiber to the Home - FTTH). All of the above, combined with the entry of humanity into the Industry 4.0 era, which contributes to the increasing digitization of services and processes governed by simple and daily operations of the human population, made possible the creation of the Internet of Things (IoT). This development, in turn, requires an even greater flow of information to and from devices that display and process this data, with the aim of informing users in a timely manner, seamlessly and in real time. Apart from the many different technologies, the development of internet services through the SOAP and REST protocols has played and continues to play a catalytic role in achieving the goals of the Industry 4.0 and the Internet of Things. Services with special emphasis on data transmission and processing, in order to achieve the above objectives. In this dissertation, the implementation of a web service using the JAVA programming language under the REST protocol will be practically take place, by using the most widespread framework, namely the Spring Boot. The main purpose of this implementation is to create an application, which will be able to receive in its input data from any type of IoT sensor, then process them and capture the output results that concern the field of interest of each user. With these assumptions, the writing of this document begins with the first chapter referring to introductory concepts about JAVA WEB services, with particular emphasis on the two protocols mentioned in the previous paragraphs. The end-use of the REST protocol will be concluded and then there will be a brief introduction to the Spring framework and the benefits of using it . To accommodate the access to the bibliography of this dissertation, bookmarks will be used that will act as hyperlinks to the latter. The second chapter synthesizes the establishment of the objectives of the present project, starting with the implementation of a requirements analysis. During their execution, the need to consume two external APIs will arise. Through this patchwork, a map-like diagram will be constructed, to understand the steps and sequence of components that will make up the final result. The third chapter is the point of intersection between the theory and the final implementation, since the technologies and tools used, are recorded there. Special emphasis will be given to the security of the application, with the implementation of Spring Security in HTTPS protocol and user authentication through Email Verification system. In a special section, the types of classes, that a Spring Boot project usually consists of, will be captured and the annotations that took place will be explained. In the fourth chapter, the construction of DevOps processes is undertaken with the Prometheus and Grafana platforms having a leading role. Detailed explanations will be given as to the usage of these through Docker and the benefits that arise from capturing metrics and graphic dashboards. The overall implementation was done via WSL Ubuntu on Windows 11 OS. Finally, in the fifth chapter, the final usage of the two API services consumed within the application is made. The guidelines and the sequence of the HTML pages, on which the consumed results from the two APIs are displayed, are given with print screen images.el
dc.contributor.masterΠληροφορικήel
dc.subject.keywordWeb servicesel
dc.subject.keywordSpring Bootel
dc.subject.keywordDevOpsel
dc.date.defense2022-11


Αρχεία σε αυτό το τεκμήριο

Thumbnail

Αυτό το τεκμήριο εμφανίζεται στις ακόλουθες συλλογές

Εμφάνιση απλής εγγραφής


Βιβλιοθήκη Πανεπιστημίου Πειραιώς
Επικοινωνήστε μαζί μας
Στείλτε μας τα σχόλιά σας
Created by ELiDOC
Η δημιουργία κι ο εμπλουτισμός του Ιδρυματικού Αποθετηρίου "Διώνη", έγιναν στο πλαίσιο του Έργου «Υπηρεσία Ιδρυματικού Αποθετηρίου και Ψηφιακής Βιβλιοθήκης» της πράξης «Ψηφιακές υπηρεσίες ανοιχτής πρόσβασης της βιβλιοθήκης του Πανεπιστημίου Πειραιώς»