Dedicated Server vs Cloud Server - τι να διαλέξω;

dedicated-server-vs-cloud-server-τι-να-διαλέξω

Τα τελευταία χρόνια η λέξη cloud ακούγεται όλο και περισσότερο σε συζητήσεις μεταξύ κόσμου της πληροφορικής και όχι μόνο. Πλέον και απλοί καθημερινοί χρήστες της σύγχρονης τεχνολογίας έχουν εξοικειωθεί με τον όρο cloud. Τελικά όμως έχετε αναρωτηθεί πραγματικά τι είναι το cloud και τι μας προσφέρει. Το cloud ή αλλιώς σύννεφο είναι από μόνο το μια έννοια αρκετά γενική. Ως cloud χαρακτηρίζουμε τον χώρο όπου φιλοξενείται μια on-line υπηρεσία ο οποίος τελικά αν και ο χρήστης δεν γνωρίζει που ακριβώς είναι, τελικά έχει υπόσταση και βρίσκεται κάπου. είναι σε κάποιο ή κάποια datacenters που απαρτίζουν το λεγόμενο cloud. Η δουλειά λοιπόν του cloud είναι να μην είναι "ορατό" στον τελικό χρήστη αλλά να του προσφέρει απρόσκοπτα τις υπηρεσίες του και να είναι διαθέσιμο συνεχώς.

To cloud στον χώρο του server hosting και των dedicated servers έφερε σημαντικές αλλαγές τόσο για το πως μοιραζουμε τους πόρους των συστημάτων αλλα και για το πως τα σχεδιάζουμε. Η υλοποίση των λύσεων περασε απο το οφυσικό επίπεδο στο εικονικό με χρήση virtual hardware όπως virtual switches, virtual firewalls, virtual servers κλπ. Επιπρόσθετα έδωσε την δυνατότητα καλύτερης εκμετάλευσης των διαθέσιμων πόρων των συστημάτων το οποίο τελικά επέφερε σημαντική μείωση του κόστους φιλοξενίας. Πάμε όμως να δούμε πως έχουν τα πράγματα.

Όταν ξεκινάτε ενα νέεο SaaS project γενικά ξεκινάτε με τις ελάχιστες απαιτήσεις. Συνήθως θα χρειαστείτε ενα webserver και εναν database server. Όταν τελικά βγείτε live και αρχίσουν οι χρηστες σας να αυξάνονται, οι χρήστες θα καθορίσουν το load του server σας και τελικα ο server σας θα καθορίσει τους maximum χρήστες. Οπότε απο που να ξεκινήσετε, απο εναν dedicated server ή εναν cloud server?

Για τα νεα startups υπάρχουν γενικά δυο προσεγκίσεις στο πως να κανεις launch την εφαρμογή σου στην υποδομή σου:

α) - pessimistic - Ετοιμασε την γρήγορα, κάνε το launch και κάνε validate οτι εμπορικά θα πετύχει πριν φας χρόνο να την βελτιώσεις τεχνικά για να αντέξει το scale out το οποίο μπορεί να μην έρθει ποτέ.

β) - optimistic - Κάνε την ανάπτυξη του κώδικα προσεκτικά με δυνατότητα να κάνεις εύκολο scale out στο μέλλον.

Με την μέθοδο Α βασικός σας στόχος είναι η εμπορική ανάπτυξη του προϊόντος και όχι η τεχνική πράγμα που σημαίνει οτι σύντομα οι πόροι του συστήμτατός σου θα εξαντληθούν γρήγορα και θα αναγκαστείς να κάνεις vertical expansion προσθετοντας Ram και CPU οσο δουλεύεις στο re-engineering για να υποστηρίξεις οριζόντιο expandability. Με την μεθοδο Β έχεις κάνει ήδη όλη την προεργασία και είσαι πλέον έτοιμος για να κάνεις Hit "μεγάλα νούμερα" χωρίς να σε περιορίζει η εφαρμογή σου.

Τελικά όμως να πάρω dedicated server ή cloud server;

Πολλοί θα βιαστουν να απαντήσουν οτι στην πρώτη περίπτωση συμφέρει ενας dedicated server ενώ στην δεύτερη ενας cloud server. Αυτό είναι και το αυτονόητο αφού στην πρώτη περίπτωση δεν είμαστε έτοιμοι να χρησιμοποιήσουμε πολλαπλούς webservers με load balancers μπροστά τους και όλα τα καλά που προσφέρει το cloud.

Δυστυχώς οσοι απάντησαν το παραπάνω κάνουν λάθος. Και στην μια περίπτωση και στην άλλη ιδανική λύση είναι η χρήση cloud servers.

Ενα απο τα μεγαλύτερα πλεονεκτήματα που έχουν οι cloud servers γι'αυτο και χρησιμοποιούνται πλέον στο 95% των σύγχρονών υλοποιήσεων είναι η επεκτασιμότητά τους.  Σκεφτείτε λοιπόν το νέο σας project οτι ξαφνικά λόγω μιας καμπάνια που κάνατε στο facebook φέρνει 40% περισότερο κόσμο που δεν είχατε υπολογίσει και είστε σε ενα dedicated μηχανημα. ενημερώνετε το datacenter οτι θέλετε περισσότερη μνήμη και..... πρέπει να κάνετε ενα downtime τη στιγμή που έχετε τους περισσότερους χρήστες που είχατε ποτέ σας....  not good idea. Στους cloud servers εχουμε δυνατότητα να προσθέσουμε πόρους όπως μνήμη και CPU on the fly, δηλαδή χωρίς κάν να κλείσει το μηχάνημά σας.

Ενας ακόμα σημαντικός παράγοντας είναι τα όρια ενος dedicated server. Ενας κοινός dedicated server μπορεί συνήθως να φιλοξενήσει λιγότερη μνήμη απο ένα cloud server.

Ενα άλλο σενάριο είναι οτι ο dedicated server σας εξυπηρετεί μια χαρά και αντέχει και το load σας αλλα κάποια στιγμή αποφασίζει να "ξεψυχισει" και δυστυχώς δεν είναι 5:00 τα ξημερώματα αλλα 15:00 το μεσημέρι. Aυτό σημαίνει και άλλο downtime αρα χαμένοι επισκέπτες, αρα χαμένοι πελάτες. Το μεγαλύτερο πλεονέκτημα ενος cloud server ειναι οτι δεν προκειται να πέσει ποτέ απο αστοχία hardware. ακόμα και αν αστοχήσει το hardware το instance σας θα μεταφερθεί αυτόματα σε άλλο φυσικό μηχάνημα χωρίς κανείς να καταλάβει απολύτως τίποτα. Αυτός είναι και ό λόγος που ενω στους dedicated servers τα SLA φτάνουν μέχρι 99% που σημαίνει μέχρι και 7 ώρες τον μήνα μπορεί να μην είναι διαθέσιμος, στους cloud servers αγγίζουν το 99,999% δηλαδή μόλις 26 δευτερόλεπτα τον μήνα.

Στην δεύτερη περίπτωση τώρα τα πράγματα είναι σαφώς ποιό ξεκάθαρα. Όταν πλέον έχουμε μια υποδομή που σε peak time χρειάζεται 50 webservers και σε off-time 10, το cloud είναι μονόδρομος. Η δυνατότητα να πληρώνουμε μόνο για ότι χρειαζόμαστε και για όση ώρα το χρειαζόμαστε ειναι το δυνατό χαρτί του cloud.

Κόστος

Έχω ακούσει απο πολλούς να συγκρινουν το κόστος ενος dedicated server με εναν cloud server. Είναι σαν να συγκρίνουμε το κόστος ενος αυτοκινήτου και ενός λεωφορείου. Και τα δύο μεταφερούν κόσμο αλλα είναι δυο τελείως διαφορετικά πράγματα. Έτσι ακριβώς συμβαίνει και με τους cloud servers. Οι cloud servers μας παρέχουνε availability που σημαίνει διπλάσιο hardware layer απο αυτό που χρησιμοποιούμε και τα εργαλεία που φροντίζουν να μας παρέχουν το availability που διαφορετικά θα έπρεπε να τα αγοράσουμε, να τα στήσουμε και να τα συντηρούμε εμείς.

ΣΥΝΔΕΣΗ

Αίτηση επικοινωνίας

ΠΑΝΩ