background image

 

Νικόλας Ψύλλου, Σχεδίαση και Υλοποίηση διαδικτυακής πλατφόρμας για 
εξυπηρέτηση παιχνιδιών καρτών απομακρυσμένων παικτών
 

 

Πτυχιακή / Διπλωματική Εργασία 

 

118 

Backend 
 
 

Το Hostinger δεν προσφέρει υπηρεσίες για την node.js στο shared hosting πλάνο 

και  για  αυτό  τον  λόγο  είναι  αδύνατο  να  τρέξει  το  backend  που  δεν  είναι  απλά,  μία 
ιστοσελίδα.  Τέτοιου  τύπου  εφαρμογές  χρειάζονται  ιδιωτικούς  εικονικούς  διακομιστές 
(Virtual Private Server) που παρέχουν περισσότερες δυνατότητες στην εφαρμογή.  
 

Η διαδικασία ξεκινάει με την δημιουργία μια παρουσίας (instance) Ubuntu στην 

πλατφόρμα  Oracle  Cloud.  Αυτή  η  παρουσία  διακρίνεται  από  μία  μοναδική  ιδιωτική 
διεύθυνση  που  για  λόγους  ασφάλειας  ως  προς  την  απόκρυψη  της  θα  πρέπει 
δημιουργηθεί  μία  εύχρηστη  διεύθυνση  URL  που  θα  συσχετίζεται  με  αυτή.  Αυτό 
πραγματοποιείται από την επεξεργασία των ρυθμίσεων DNS (Domain Name System) όπου 
θα πρέπει να οριστεί και η πόρτα που θα τρέχει η εφαρμογή για να διασφαλιστεί η σωστή 
πρόσβαση σε αυτή. 
 

Από  το  VPS  γίνεται  η  εγκατάσταση  της  MySQL  και  η  δημιουργία  της  βάσης 

δεδομένων,  ώστε  να  τρέχει  μαζί  με  την  εφαρμογή  και  να  αποθηκεύει  τα  δεδομένα  σε 
αυτή.  
 

Με την χρήση του GitHub θα γίνει η φόρτωση της εφαρμογής στο VPS από το main 

branch  του  repository.  Έπειτα  γίνεται  η  εγκατάσταση  της  node.js  στο  VPS  ώστε  να 
εγκατασταθούν όλα τα απαιτούμενα πακέτα που χρειάζονται για να τρέξει η εφαρμογή 
με  την  εντολή  npm  install.  Στην  συνέχεια  πρέπει  να  δημιουργηθεί  το  .env  αρχείο  που 
περιέχει κλειδιά ή κωδικούς που σχετίζονται με την εφαρμογή ώστε να μπορεί να τρέξει 
η εφαρμογή και να είναι σε θέση να επικοινωνήσει με την frontend εφαρμογή. Για λόγους 
ευκολίας  υπάρχει  το  αρχείο  .env.example  που  περιέχει  τις  ονομασίες  των  μεταβλητών 
που θα πρέπει να υπάρχουν στο .env αρχείο.  Όπως και στην Vue.js, η Νest.js δημιουργεί 
το dist φάκελο μέσω της εντολής npm run build –prod που περιέχει την μεταγλωττισμένη 
και βελτιστοποιημένη έκδοση της εφαρμογής σε αρχεία JavaScript.  
 

Τέλος,  για  να  συνεχίσει  να  τρέχει  η  εφαρμογή  στο  παρασκήνιο  χωρίς  να 

σταματήσει  όταν  τερματιστεί  η  σύνδεση  με  το  VPS,  απαιτείται  η  εγκατάσταση  του 
πακέτου pm2. Μέσω της εντολής pm2 start app-name τρέχει η εφαρμογή στο παρασκήνιο 
μέχρι να τερματιστεί από τον διαχειριστή με την εντολή pm2 stop app-name.  
 

 

 

 

5.4.2 Δοκιμή 

 

Η  διασφάλιση  της  ορθής  λειτουργίας  της  πλατφόρμας  αποτελεί  σημαντικό 

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

Καθώς η παρούσα πλατφόρμα που δημιουργήθηκε βρίσκεται στην πρώτη έκδοση 

της, οι δοκιμές της πλατφόρμας έγιναν στο περιβάλλον παραγωγής.  
 

Η  πρώτη  δοκιμή  της  πλατφόρμας  πραγματοποιήθηκε  αποκλειστικά  από  τον 

προγραμματιστή  της  με την χρήση  δύο  (2)  ηλεκτρονικών  υπολογιστών  και  από  δύο  (2)