Architecture strategies and implementation for moderm web applications
Αρχιτεκτονικές στρατηγικές και τεχνικές υλοποίησης για σύγχρονες εφαρμογές ιστού
Master Thesis
Συγγραφέας
Berdelis, Konstantinos
Μπερδελής, Κωνσταντίνος
Ημερομηνία
2025-11Επιβλέπων
Alepis, EfthimiosΑλέπης, Ευθύμιος
Προβολή/ Άνοιγμα
Λέξεις κλειδιά
Software engineering ; Web application ; CI/ CD ; Continues integration ; Backend services engineering ; Front-end services engineering ; Operations ; Monitoring ; Troubleshooting ; Microservices architecture ; WebSocket ; WebRTC ; Spring Boot ; React.js ; PostgreSQL ; Docker ; Kubernetes ; OAuth 2.0, JWT ; Infrastructure as code ; Real-time communication ; Cloud deploymentΠερίληψη
Η παρούσα διατριβή παρουσιάζει μια ολοκληρωμένη διερεύνηση των αρχιτεκτονικών στρατηγικών και των τεχνικών υλοποίησης για σύγχρονες εφαρμογές ιστού. Η έρευνα επικεντρώνεται στη δημιουργία κλιμακούμενων, ασφαλών και συντηρήσιμων συστημάτων χρησιμοποιώντας σύγχρονα πλαίσια και εργαλεία, συμπεριλαμβανομένης της αρχιτεκτονικής μικροϋπηρεσιών, των πρωτοκόλλων επικοινωνίας σε πραγματικό χρόνο και των στρατηγικών ανάπτυξης σε cloud περιβάλλοντα.
Η εργασία επιδεικνύει τον πλήρη κύκλο ζωής της ανάπτυξης εφαρμογών ιστού, από τον αρχικό σχεδιασμό σχήματος βάσης δεδομένων με χρήση PostgreSQL έως την υλοποίηση RESTful και WebSocket APIs για την επικοινωνία πελάτη-διακομιστή. Η αρχιτεκτονική backend χρησιμοποιεί μικροϋπηρεσίες Spring Boot που ορχηστρώνονται μέσω message brokers (RabbitMQ και Kafka), με το Keycloak να διαχειρίζεται την πιστοποίηση και εξουσιοδότηση μέσω OAuth 2.0 και JWT bearer tokens. Το frontend κατασκευάζεται με React.js και Next.js χρησιμοποιώντας TypeScript, υλοποιώντας server-side rendering για βέλτιστη απόδοση και SEO.
Βασικές συνεισφορές περιλαμβάνουν την υλοποίηση αμφίδρομης επικοινωνίας σε πραγματικό χρόνο χρησιμοποιώντας WebSockets για λειτουργικότητα συνομιλίας και WebRTC για peer-to-peer κλήσεις ήχου-βίντεο. Η στρατηγική ανάπτυξης αξιοποιεί containerization με Docker και ενορχήστρωση με Kubernetes, χρησιμοποιώντας NGINX ως reverse proxy και load balancer. Το σύστημα ενσωματώνει ολοκληρωμένη παρακολούθηση μέσω Prometheus και Grafana, διασφαλίζοντας παρατηρησιμότητα και προληπτικό εντοπισμό προβλημάτων.
Προηγμένα χαρακτηριστικά περιλαμβάνουν την υλοποίηση Infrastructure as Code (IAC) χρησιμοποιώντας Terraform και Ansible για αυτοματοποιημένη προμήθεια και διαχείριση διαμόρφωσης, Redis caching για βελτιστοποίηση απόδοσης, και ενσωμάτωση ενός AI agent (DeepSeek-R1) εντός της υπηρεσίας WebSocket chat. Το CI/CD pipeline αυτοματοποιεί τις δοκιμές και την ανάπτυξη μέσω GitHub Actions, υποστηρίζοντας στρατηγικές blue-green deployment για ενημερώσεις χωρίς διακοπή λειτουργίας.
Η έρευνα δίνει έμφαση όχι μόνο στην πρακτική υλοποίηση αλλά και στις βασικές αρχές και τα αρχιτεκτονικά μοτίβα που καθιστούν τις σύγχρονες εφαρμογές ιστού εύρωστες, κλιμακούμενες και ασφαλείς. Αποφεύγοντας υπερβολικά αφαιρετικές λύσεις, αυτή η εργασία παρέχει στους προγραμματιστές μια σαφή κατανόηση του πώς λειτουργούν οι τεχνολογίες ιστού σε θεμελιώδες επίπεδο, επιτρέποντας τεκμηριωμένη λήψη αποφάσεων κατά την επιλογή εργαλείων και προσεγγίσεων για μελλοντικά έργα.


