Σπίτι Cloud-Computing Πώς η εικονικοποίηση μπορεί να ενισχύσει τις εφαρμογές του SAAS

Πώς η εικονικοποίηση μπορεί να ενισχύσει τις εφαρμογές του SAAS

Πίνακας περιεχομένων:

Anonim

Η εικονικοποίηση περιλαμβάνει διάφορες τεχνολογίες πληροφορικής και μπορεί να επιτευχθεί τόσο σε επίπεδο υλικού όσο και σε επίπεδο λογισμικού. Σε μια επιχείρηση, η εικονικοποίηση μπορεί να βελτιώσει την ικανότητα των υπηρεσιών λογισμικού, ειδικά των εφαρμογών SaaS. Είναι επίσης ο πιο αποτελεσματικός τρόπος για τις επιχειρήσεις να μειώσουν το κόστος της πληροφορικής τους. Αλλά βάλτε το virtualization και το SaaS μαζί και μπορεί να έχετε έναν νικηφόρο συνδυασμό.

Τι είναι το SaaS;

Το λογισμικό ως υπηρεσία (SaaS) είναι ένα μοντέλο αδειοδότησης λογισμικού στο οποίο το λογισμικό έχει άδεια χρήσης σε συνδρομή και φιλοξενείται κεντρικά από έναν προμηθευτή ή έναν παροχέα υπηρεσιών. Αυτές οι κατανεμημένες εφαρμογές λογισμικού διατίθενται στους πελάτες μέσω του διαδικτύου.


Το SaaS γίνεται δημοφιλές σε τεχνολογίες που υποστηρίζουν αρχιτεκτονική προσανατολισμένη στις υπηρεσίες (SOA) ή υπηρεσίες Web. Το SaaS έρχεται με πολλά πλεονεκτήματα. Οι πιο συνηθισμένοι είναι:

  • Εύκολη διαχείριση
  • Εύκολη ενημέρωση και διαχείριση ενημερωμένης έκδοσης κώδικα
  • Συμβατότητα (όλοι οι χρήστες θα έχουν την ίδια έκδοση του λογισμικού)
  • Παγκόσμια προσβασιμότητα
Το SaaS θεωρείται επίσης μέρος της ονοματολογίας του cloud computing μαζί με:

  • Διαχείριση της τεχνολογίας πληροφοριών ως υπηρεσία (ITMaaS)

Εικονικοποίηση και παράδοση λογισμικού

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


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

Virtualization και SaaS

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

  • Τεράστιο κόστος εκκίνησης: Τα έσοδα που επενδύονται στην εγκατάσταση ανακτώνται για μια περίοδο ετών.
  • Μπορεί να παραβιάσει τις αρχές του Ελεύθερου Λογισμικού: Ο ακτιβιστής της ελευθερίας του λογισμικού Richard Stallman αναφέρεται στο SaaS ως "υπηρεσία ως υποκατάστατο λογισμικού (SaaSS)" και θεωρεί ότι παραβιάζει τις αρχές του ελεύθερου λογισμικού.


    "Με το SaaS, οι χρήστες δεν έχουν ένα αντίγραφο του εκτελέσιμου αρχείου: είναι στο διακομιστή, όπου οι χρήστες δεν μπορούν να το δουν ή να το αγγίξουν, γι 'αυτό είναι αδύνατον να διαπιστώσουν τι πραγματικά κάνει και είναι αδύνατο να αλλάξουν Το SaaS παρέχει εγγενώς στον χειριστή του διακομιστή την εξουσία να αλλάζει το χρησιμοποιούμενο λογισμικό ή τα δεδομένα των χρηστών που λειτουργούν ", γράφει ο Stallman στον ιστότοπο του GNU.

Ένα καλό παράδειγμα του SaaS πάνω από την εικονικοποίηση είναι η Amazon Web Services (AWS). Η AWS προσφέρει πλήθος λογισμικών και πλατφορμών. Το λογισμικό εγκαθίσταται σε εικονικούς κεντρικούς υπολογιστές και μπορεί να κλιμακωθεί προς τα επάνω ή προς τα κάτω όπως και όταν απαιτείται.


Αν επικεντρωθούμε πέρα ​​από το κόστος υποδομής και εκκίνησης, μόλις αναπτυχθεί, μια πλατφόρμα εφαρμογής SaaS θα πρέπει να αφορά μόνο την αναπαραγωγικότητα. Κάθε περίπτωση της εφαρμογής που βασίζεται σε SaaS θα πρέπει να είναι ταυτόσημη μεταξύ τους. Θα πρέπει να υπάρχουν ελάχιστες διαφορές προκειμένου να διατηρηθεί η συνεπής συμπεριφορά κάθε στιγμιότυπου εφαρμογής για κάθε πελάτη και για την ομάδα υποστήριξης. Αυτό γίνεται έτσι ώστε να έχουν μια ομοιόμορφη βάση για την αντιμετώπιση τυχόν προβλημάτων, εάν απαιτείται. Ο μηχανικός υποστήριξης δεν θα ήθελε να ανακαλύψει ένα πρόβλημα που προκαλείται από μια δομή λίστας που λείπει για μια μοναδική παρουσία πελάτη. Ομοίως, ούτε ένας πελάτης θα ήθελε να γνωρίζει ότι θα μπορούσε να υπάρξει πρόβλημα σε κάθε παραγγελία, επειδή η εταιρεία με έδρα το SaaS δεν μπορεί να αναπαράγει το πρόβλημα χρησιμοποιώντας τα ίδια βήματα για κάθε παραγγελία. Ολόκληρη η διαδικασία πρέπει να αυτοματοποιηθεί για λόγους συνέπειας και κόστους.

Αύξηση της πολυπλοκότητας

Είναι σημαντικό να κατανοήσουμε τον περίπλοκο χαρακτήρα της ανάπτυξης για τις σημερινές εφαρμογές - είτε πρόκειται για το μοντέλο SaaS είτε για το παραδοσιακό μοντέλο. Ακόμη και η απλούστερη εφαρμογή Web δεν είναι πλέον υπεύθυνη για τη διαχείριση του υποκείμενου επιπέδου αποθήκευσης δεδομένων. Η συνήθης πρακτική είναι να έχετε μια βάση δεδομένων, για παράδειγμα MySQL, Oracle, DB2 ή SQL Server. Συνδυάζοντας αυτά με τυπικές στοίβες Web όπως Java, Ninja, Grails, Rails, κλπ., Οδηγεί σε μια πολυεπίπεδη αρχιτεκτονική που απαιτεί επεκτάσιμη ανάπτυξη. Για παράδειγμα, κατά τη δημιουργία ενός περιβάλλοντος Rails, χρησιμοποιήσαμε MySQL.


Η ευκίνητη φύση των εφαρμογών, που επιτρέπει την εύκολη αναβάθμιση του λογισμικού μέσω plugins, patches, macros και mashups, μπορεί εύκολα να ενσωματωθεί στο μοντέλο SaaS. Μια επέκταση ή μια ενημερωμένη έκδοση κώδικα έχει αναπτυχθεί για ένα μικρότερο ζήτημα, τις περισσότερες φορές μια επιδιόρθωση σφάλματος, η οποία πρέπει να παραδοθεί ως έμπλαστρο στο εξερχόμενο λογισμικό. Συνήθως ένας πελάτης δεν θα ήθελε να ακούσει ότι ένα πρόβλημα προέκυψε λόγω ενός περιορισμού των πόρων ή κάποιων άλλων περιστάσεων ή ότι δημιουργήθηκε από έναν άλλο πελάτη.


Σύμφωνα με τη Wikipedia, ο διαχωρισμός των ανησυχιών είναι η προϋπόθεση για τη διάσπαση μιας εφαρμογής σε ξεχωριστά χαρακτηριστικά, τα οποία ελαχιστοποιούν την αλληλεπικάλυψη λειτουργικότητας. Με την εφαρμογή virtualization, αυτή η έννοια μπορεί να εφαρμοστεί στην υποδομή. Ο διαχωρισμός μπορεί να εφαρμοστεί ανάλογα με τη βάση ανά εφαρμογή, ανά πελάτη ή ανά ομάδα. Ενώ εξακολουθεί να χρησιμοποιεί το υλικό στη μέγιστη χωρητικότητά του, παρέχει τη δυνατότητα να κλιμακώνεται οριζόντια και κάθετα. Αυτό είναι επωφελές για τις εφαρμογές ενός μισθωτή που επιθυμούν να εισέλθουν στην αγορά SaaS. Η άμεση πολυδυναμία στο υποκείμενο υλικό με σχεδόν μηδενική αλλαγή κώδικα μπορεί να επιτευχθεί με ευκολία.


Υπάρχουν δύο μοντέλα ανάπτυξης που αναπτύσσονται στην πλατφόρμα SaaS της Contegix. Ο παράγοντας διαφοροποίησης εξαρτάται από τον τρόπο ανάπτυξης της εφαρμογής:

  • Υποστήριξη ενός μόνο πελάτη ανά ανάπτυξη, ή
  • Για να υποστηρίξετε πολλούς πελάτες σε μία μόνο εγκατάσταση
Το άλλο κοινό μοντέλο ανάπτυξης είναι να παρέχει μεγαλύτερο βαθμό διαχωρισμού. Οι υποκείμενες εφαρμογές υποδομής χωρίζονται σε εικονικές μηχανές, οι οποίες κλιμακώνονται στα αντίστοιχα απαιτούμενα επίπεδα. Εκτός από το μοντέλο ενός μισθωτή, αυτό το μοντέλο επιτρέπει την κλιμάκωση όχι μόνο των επιμέρους στοιχείων όσον αφορά τους πόρους της εικονικής μηχανής, αλλά και τον αριθμό των περιπτώσεων. Αυτό το μοντέλο εξυπηρετεί πολύ καλά για μεγάλες περιπτώσεις ή πολλαπλές εφαρμογές πελατών.


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

Πώς η εικονικοποίηση μπορεί να ενισχύσει τις εφαρμογές του SAAS