Τεχνολογίες αρχείων - διακομιστή και πελάτη - διακομιστή. Κατανομή της εφαρμογής μεταξύ πελάτη και διακομιστή. Έτσι, όλα τα παραπάνω μειονεκτήματα του σχήματος αρχείου-διακομιστή εξαλείφονται στην αρχιτεκτονική πελάτη-διακομιστή

ΣΔ που λειτουργούν με τεχνολογία FILE SERVER.

DB που λειτουργούν με χρήση τεχνολογίας CLIENT-SERVER.

Διακομιστής αρχείων


- Πρόσβαση στη βάση δεδομένων (ερώτημα)
- Μεταφορά δεδομένων ενώ αποκλείεται η πρόσβαση σε άλλους χρήστες
- Επεξεργασία δεδομένων στον υπολογιστή του χρήστη

Για λόγους σαφήνειας, ας εξετάσουμε συγκεκριμένα παραδείγματα. Ας υποθέσουμε ότι πρέπει να δείτε τις απεσταλμένες εντολές πληρωμής για την περίοδο από 19 Μαΐου έως 25 Μαΐου στο ποσό των 5.000 ρούβλια. Ο χρήστης θα πρέπει να εκκινήσει στον υπολογιστή του μια εφαρμογή πελάτη που λειτουργεί στη βάση δεδομένων με εντολές πληρωμής και να εισαγάγει τα απαραίτητα κριτήρια επιλογής. Μετά από αυτό, ένα αρχείο που περιέχει όλα τα έγγραφα αυτού του τύπου για ολόκληρη την περίοδο για οποιαδήποτε ποσά θα μεταφορτωθεί στον υπολογιστή σας από τον διακομιστή της βάσης δεδομένων και θα φορτωθεί στη μνήμη RAM. Μια εφαρμογή πελάτη που εκτελείται στον υπολογιστή του χρήστη που λειτουργεί με τη βάση δεδομένων θα επεξεργάζεται αυτές τις πληροφορίες (τα ταξινομεί) και στη συνέχεια θα παρέχει μια απάντηση (στην οθόνη θα εμφανιστεί μια λίστα με εντολές πληρωμής που πληρούν τα κριτήριά σας). Μετά από αυτό, θα επιλέξετε την επιθυμητή εντολή πληρωμής και θα προσπαθήσετε να επεξεργαστείτε (αλλάξετε) ένα πεδίο σε αυτό - για παράδειγμα, την ημερομηνία. Κατά την επεξεργασία, η προέλευση δεδομένων μπλοκάρεται, δηλαδή ολόκληρο το αρχείο που περιέχει αυτό το έγγραφο. Αυτό σημαίνει ότι το αρχείο είτε δεν θα είναι καθόλου διαθέσιμο σε άλλους χρήστες είτε θα είναι διαθέσιμο μόνο σε λειτουργία προβολής. Επιπλέον, αυτό το είδος λήψης δεν συμβαίνει καν σε επίπεδο εγγραφής, δηλαδή σε ένα έγγραφο, αλλά ολόκληρο το αρχείο είναι κλειδωμένο - δηλαδή ολόκληρος ο πίνακας που περιέχει παρόμοια έγγραφα. Μόνο μετά την πλήρη επεξεργασία αυτού του πεδίου και την έξοδο από τη λειτουργία επεξεργασίας, αυτό το αρχείο εντολής πληρωμής θα ξεκλειδωθεί ώστε να μην καταγραφεί από τον χρήστη. Εάν τα δεδομένα είναι αποθηκευμένα σε μεγαλύτερα αντικείμενα, για παράδειγμα, ένα αρχείο περιέχει εντολές πληρωμής τόσο για τη λήψη κεφαλαίων όσο και για την αποστολή κεφαλαίων, τότε ακόμη περισσότερες πληροφορίες δεν θα είναι διαθέσιμες. Θα εργαστείτε με ένα πεδίο "ημερομηνία" σε ένα έγγραφο - οι υπόλοιποι υπάλληλοι της επιχείρησης θα περιμένουν μέχρι να τελειώσετε.

Τα μειονεκτήματα του συστήματος FILE SERVER είναι προφανή:

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

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

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

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

    Διακομιστή-πελάτη

    Επεξεργασία ενός αιτήματος χρήστη:
    - Πρόσβαση στη βάση δεδομένων (ερώτημα SQL)
    - Μετάδοση της απάντησης - το αποτέλεσμα της επεξεργασίας


    Εάν είναι απαραίτητο να επεξεργαστείτε πληροφορίες που είναι αποθηκευμένες στη βάση δεδομένων, μια εφαρμογή πελάτη που εκτελείται στον υπολογιστή του χρήστη που λειτουργεί με τη βάση δεδομένων δημιουργεί ένα ερώτημα στη γλώσσα SQL (όνομα από τα αρχικά γράμματα - Structured Query Language). Ο διακομιστής βάσης δεδομένων αποδέχεται το αίτημα και το επεξεργάζεται ανεξάρτητα. Καμία συστοιχία δεδομένων (αρχείο) δεν μεταδίδεται μέσω του δικτύου. Μετά την επεξεργασία του αιτήματος, μόνο το αποτέλεσμα μεταφέρεται στον υπολογιστή του χρήστη - δηλαδή, στο προηγούμενο παράδειγμα, μια λίστα εντολών πληρωμής που πληρούν τα απαραίτητα κριτήρια. Το ίδιο το αρχείο, στο οποίο αποθηκεύτηκαν τα δεδομένα που χρησίμευαν ως πηγή για επεξεργασία, παραμένει ξεμπλοκαρισμένο για πρόσβαση από τον ίδιο τον διακομιστή κατόπιν αιτήματος άλλων χρηστών.

    Σε σοβαρά DBMS πελάτη-διακομιστή, υπάρχουν πρόσθετοι μηχανισμοί που μειώνουν το φόρτο στο δίκτυο και μειώνουν τις απαιτήσεις για τους υπολογιστές των χρηστών. Ως παράδειγμα, θα δώσουμε αποθηκευμένες διαδικασίες - δηλαδή ολόκληρα προγράμματα για την επεξεργασία δεδομένων που είναι αποθηκευμένα στη βάση δεδομένων. Σε αυτήν την περίπτωση, ούτε καν εκφράσεις SQL δεν μεταφέρονται από τον χρήστη στον διακομιστή - μεταφέρεται μια κλήση συνάρτησης με παραμέτρους κλήσης. Ετσι, ΧΩΡΟΣ ΕΡΓΑΣΙΑΣη εμπειρία χρήστη απλοποιείται περαιτέρω, η λογική του προγράμματος μεταφέρεται στον διακομιστή. Ο χώρος χρήστη γίνεται απλώς ένα μέσο προβολής πληροφοριών. Όλα αυτά σημαίνουν περαιτέρω μείωση του φορτίου στο δίκτυο και στους σταθμούς εργασίας των χρηστών.

    Έτσι, όλα τα παραπάνω μειονεκτήματα του σχήματος FILE-SERVER εξαλείφονται στην αρχιτεκτονική CLIENT-SERVER:

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

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

      Τα δεδομένα δεν μπλοκάρονται (συλλαμβάνονται) από έναν χρήστη.

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

      Έχοντας εξετάσει τη διαφορά μεταξύ ενός FILE SERVER και ενός CLIENT SERVER, μπορούμε να ολοκληρώσουμε την εξέταση της έννοιας της "αποθήκευσης πληροφοριών". Είναι σημαντικό να τονιστεί ότι η λειτουργία του εταιρικού συστήματος εξαρτάται σε μεγάλο βαθμό από τον τύπο του DBMS που χρησιμοποιείται. Είναι προφανές ότι για μεγάλες επιχειρήσεις, με μεγάλο αριθμό χρηστών, με τεράστιο αριθμό εγγραφών στη βάση δεδομένων, το σχήμα αρχείων-διακομιστή είναι εντελώς απαράδεκτο. Από την άλλη πλευρά, υπάρχουν διαφορές στις βάσεις δεδομένων σε άλλες παραμέτρους και δυνατότητες:

        τύπους δεδομένων που μπορούν να αποθηκευτούν στη βάση δεδομένων (αριθμοί, ημερομηνίες, κείμενο, εικόνες, βίντεο, ήχος κ.λπ.)

        σχετικά με τις τεχνολογίες που οργανώνονται από την ίδια τη βάση δεδομένων για την πρόσβαση σε δεδομένα στη βάση δεδομένων και το επίπεδο προστασίας των πληροφοριών από μη εξουσιοδοτημένη πρόσβαση·

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

        σχετικά με τα παρεχόμενα εργαλεία και μεθόδους για την ανάλυση πληροφοριών (δεδομένων), τα οποία μπορούν να εφαρμοστούν σε ένα πληροφοριακό σύστημα που βασίζεται σε αυτή τη βάση δεδομένων·

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

        με ταχύτητα - χρόνος που δαπανάται για πρόσβαση και επεξεργασία πληροφοριών.

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

        από το επίπεδο υποστήριξης (υπηρεσίας) που παρέχεται από τον προγραμματιστή της βάσης δεδομένων ή τον εξουσιοδοτημένο αντιπρόσωπό του·

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

        Γιατί δεν είναι κερδοφόρο να επενδύουμε σε μια λύση διακομιστή αρχείων σήμερα; Σήμερα η μελλοντική πορεία ανάπτυξης βάσεων δεδομένων είναι ήδη προφανής. Εμφανίζονται πολυεπίπεδα συστήματα πελάτη-διακομιστή, με πολύ thin clients, καταργώντας κάθε περιορισμό από τους σταθμούς πελατών, τόσο ως προς την απόδοση όσο και ως προς την πλατφόρμα και το λειτουργικό σύστημα. Εάν για μια λύση πελάτη-διακομιστή η περαιτέρω ανάπτυξη φαίνεται ξεκάθαρα και η μετάβαση από πελάτη-διακομιστή σε πελάτη-διακομιστή πολλαπλών επιπέδων δεν είναι προβληματική, τότε για έναν διακομιστή αρχείων μια απλή μετάβαση σε πελάτη-διακομιστή δημιουργεί τεράστια πρόβλημα και τεράστιο κόστος εργασίας, αν αυτό ξαφνικά αποδειχθεί ότι είναι καθόλου δυνατό.

Τεχνολογίες πελάτη-διακομιστή

Σχεδόν όλα τα μοντέλα για την οργάνωση της αλληλεπίδρασης χρήστη με μια βάση δεδομένων βασίζονται σε τεχνολογία πελάτη-διακομιστή. Θεωρείται ότι κάθε τέτοια εφαρμογή διαφέρει στον τρόπο με τον οποίο διανέμει τις λειτουργίες: το τμήμα πελάτη είναι υπεύθυνο για τη στοχευμένη επεξεργασία δεδομένων και την οργάνωση της αλληλεπίδρασης με τον χρήστη, το τμήμα διακομιστή παρέχει αποθήκευση δεδομένων - επεξεργάζεται αιτήματα και στέλνει αποτελέσματα στον πελάτη για ειδική επεξεργασία. Μια τυπική αρχιτεκτονική της τεχνολογίας πελάτη-διακομιστή φαίνεται στο Σχ. 4.1:

Ρύζι. 4.1. Τυπική αρχιτεκτονική τεχνολογίας πελάτη-διακομιστή

Ορισμένες από τις λειτουργίες των κεντρικών υπολογιστών αναλήφθηκαν από τοπικούς υπολογιστές. Οποιος εφαρμογή λογισμικούΣε αυτήν την περίπτωση, αντιπροσωπεύεται από τρία στοιχεία: ένα στοιχείο παρουσίασης που υλοποιεί τη διεπαφή με τον χρήστη. ένα στοιχείο εφαρμογής που παρέχει λειτουργίες εφαρμογής. ένα στοιχείο για την πρόσβαση σε πόρους πληροφοριών (διαχειριστής πόρων), το οποίο συγκεντρώνει πληροφορίες και διαχειρίζεται δεδομένα.

Με βάση την κατανομή αυτών των στοιχείων μεταξύ του σταθμού εργασίας και του διακομιστή δικτύου, τα μοντέλα αρχιτεκτονικής πελάτη-διακομιστή διακρίνονται:

· μοντέλο πρόσβασης σε απομακρυσμένα δεδομένα (Εικ. 4.2). Ο διακομιστής περιέχει μόνο τα ακόλουθα δεδομένα:

Ρύζι. 4.2. Μοντέλο απομακρυσμένης πρόσβασης δεδομένων

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

· Μοντέλο διακομιστή διαχείρισης δεδομένων (Εικ. 4.3):

Ρύζι. 4.3. Μοντέλο διακομιστή διαχείρισης δεδομένων

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

· σύνθετο μοντέλο διακομιστή (Εικ. 4.4):

Ρύζι. 4.4. Σύνθετο μοντέλο διακομιστή

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

· Αρχιτεκτονική πελάτη-διακομιστή τριών επιπέδων (Εικ. 4.5). Χρησιμοποιείται όταν αυξάνεται η πολυπλοκότητα και η ένταση των πόρων ενός στοιχείου εφαρμογής.

Ρύζι. 4.5. Αρχιτεκτονική τριών επιπέδων

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

Στην αρχιτεκτονική πελάτη-διακομιστή, υπάρχουν δύο βασικές έννοιες:

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

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

Δίκτυο IT

ΗΛΕΚΤΡΟΝΙΚΗ ΔΙΕΥΘΥΝΣΗ. Η πρώτη που εμφανίστηκε, αυτή η μορφή ηλεκτρονικών μηνυμάτων (e-mail) έδειξε την ίδια τη δυνατότητα σχεδόν στιγμιαίας επικοινωνίας μέσω δίκτυα υπολογιστών. Αρχιτεκτονικά σχεδιασμένο για την ανταλλαγή μηνυμάτων μεταξύ δύο συνδρομητών, επέτρεπε σε ομάδες ανθρώπων να ανταλλάσσουν πληροφορίες. Οι ομάδες ή οι λίστες αλληλογραφίας έγιναν μια τέτοια τροποποίηση. Χρησιμοποιώντας λογισμικό email, μπορείτε να δημιουργήσετε μηνύματα email και να δημιουργήσετε συνημμένα σε αυτά. Η δυνατότητα επισύναψης χρησιμοποιείται για την αποστολή οποιουδήποτε τύπου εγγράφου μέσω ταχυδρομείου, π.χ. έγγραφα κειμένου, ΥΠΟΛΟΓΙΣΤΙΚΑ ΦΥΛΛΑ, αρχεία πολυμέσων, αρχεία βάσης δεδομένων κ.λπ. Το λογισμικό φιλτραρίσματος κειμένου που αναπτύχθηκε αργότερα επέκτεινε τις δυνατότητες ΗΛΕΚΤΡΟΝΙΚΗ ΔΙΕΥΘΥΝΣΗγια να βοηθήσει τη δομή, τη δρομολόγηση και το φιλτράρισμα των μηνυμάτων του χρήστη. Η ανάγκη για αυτές τις υπηρεσίες οφείλεται στη συνεχώς αυξανόμενη ποσότητα αλληλογραφίας που είναι ελάχιστη ή καθόλου χρήσιμη για τον χρήστη (Spam). Το λογισμικό φιλτραρίσματος μπορεί να διασφαλίσει ότι οι χρήστες λαμβάνουν μόνο εξατομικευμένα μηνύματα που περιέχουν ειδήσεις που είναι σημαντικές για αυτούς και επίσης τους βοηθά να βρίσκουν πληροφορίες που τους αφορούν. απαραίτητο για τους χρήστεςστη διαδικασία λήψης αποφάσεων.

Τηλεδιασκέψεις ή ομάδες συζητήσεων. Οι τηλεδιασκέψεις είναι το επόμενο στάδιο στην ανάπτυξη των συστημάτων επικοινωνίας. Τα χαρακτηριστικά τους ήταν, πρώτον, η αποθήκευση μηνυμάτων και η παροχή πρόσβασης στα ενδιαφερόμενα μέρη σε ολόκληρο το ιστορικό ανταλλαγής και, δεύτερον, διάφορους τρόπουςθεματική ομαδοποίηση μηνυμάτων. Τέτοια συστήματα συνδιάσκεψης επιτρέπουν σε μια ομάδα συνεργαζόμενων αλλά γεωγραφικά διαχωρισμένων ανθρώπων να ανταλλάσσουν απόψεις, ιδέες ή πληροφορίες στο διαδίκτυο όταν συζητούν οποιοδήποτε θέμα, ξεπερνώντας χρονικά και χωρικά εμπόδια. Επί του παρόντος, υπάρχουν πολλοί τύποι συστημάτων συνδιάσκεψης, συμπεριλαμβανομένων των συνεδριάσεων με υπολογιστή (συσκέψεις που πραγματοποιούνται μέσω e-mail), των κλήσεων συνδιάσκεψης με δυνατότητα σύνδεσης συνδρομητές κινητής τηλεφωνίας, συνέδρια με χρήση επιτραπέζιων υπολογιστών, πολυμέσων, τηλεόρασης και τηλεδιάσκεψης.

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

Τα πιο κοινά σύγχρονα μέσα διαδραστικής επικοινωνίας είναι οι εφαρμογές Ιστού που υποστηρίζουν τις ακόλουθες μορφές επικοινωνίας:

ο Βιβλία επισκεπτών.Η πρώτη και απλούστερη μορφή. Το απλούστερο βιβλίο επισκεπτών είναι μια λίστα μηνυμάτων, που εμφανίζονται από το τελευταίο έως το πρώτο, καθένα από τα οποία αφέθηκε σε αυτό από έναν επισκέπτη.

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

ο Blogs(Web Log - Web log, Web protocol). Σε αυτές τις υπηρεσίες, κάθε συμμετέχων διατηρεί το δικό του ημερολόγιο - αφήνει τις καταχωρήσεις με χρονολογική σειρά. Τα θέματα των καταχωρήσεων μπορεί να είναι οτιδήποτε. Άλλοι επισκέπτες μπορούν να αφήσουν σχόλια σε αυτές τις αναρτήσεις. Σε αυτήν την περίπτωση, ο χρήστης, εκτός από τη δυνατότητα να διατηρεί το δικό του ημερολόγιο, έχει την ευκαιρία να οργανώσει μια προβολή καταχώρισης - μια λίστα εγγραφών από τα περιοδικά των "φίλων", να ρυθμίσει την πρόσβαση σε εγγραφές και να αναζητήσει συνομιλητές με βάση τα ενδιαφέροντα. Με βάση τέτοια συστήματα δημιουργούνται κοινότητες ενδιαφέροντος - περιοδικά που διατηρούνται συλλογικά. Σε μια τέτοια κοινότητα, τα μέλη της μπορούν ελεύθερα να δημοσιεύσουν οποιοδήποτε μήνυμα που σχετίζεται με τις δραστηριότητες της κοινότητας.

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

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

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

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

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

Με βάση την τελευταία προσέγγιση, ένας αρκετά μεγάλος αριθμός υπηρεσιών κοινωνικού Ιστού ενώθηκε συνηθισμένο όνομαΥπηρεσίες Web 2.0. Μπορείτε να καθορίσετε μερικούς τέτοιους πόρους:

ο Κοινωνικοί σελιδοδείκτες. Ορισμένοι ιστότοποι επιτρέπουν στους χρήστες να μοιράζονται μια λίστα με σελιδοδείκτες ή δημοφιλείς ιστότοπους με άλλους. Τέτοιοι ιστότοποι μπορούν επίσης να χρησιμοποιηθούν για την εύρεση χρηστών με κοινά ενδιαφέροντα. Παράδειγμα: Νόστιμο.

ο Κοινωνικοί κατάλογοιυπενθυμίζω κοινωνικούς σελιδοδείκτες, αλλά επικεντρώνονται στη χρήση στον ακαδημαϊκό τομέα, επιτρέποντας στους χρήστες να εργαστούν με μια βάση δεδομένων με αναφορές από επιστημονικά άρθρα. Παραδείγματα: Academic Search Premier, LexisNexis Academic University, CiteULike, Connotea.

ο Κοινωνικές βιβλιοθήκεςείναι εφαρμογές που επιτρέπουν στους επισκέπτες να αφήνουν συνδέσμους προς τις συλλογές, τα βιβλία και τις ηχογραφήσεις τους που είναι διαθέσιμες σε άλλους. Παρέχεται υποστήριξη για ένα σύστημα συστάσεων και αξιολογήσεων. Παραδείγματα: discogs.com, IMDb.com.

ο Διαδικτυακά παιχνίδια για πολλούς παίκτεςπροσομοίωση εικονικών κόσμων με διάφορα συστήματαβαθμολογία, επίπεδα, ανταγωνισμός, νικητές και ηττημένοι. Παράδειγμα: World of Warcraft.

ο Πολύγλωσσος μεσα ΚΟΙΝΩΝΙΚΗΣ ΔΙΚΤΥΩΣΗΣ σας επιτρέπουν να δημιουργήσετε κοινωνικές σχέσεις μεταξύ των ανθρώπων που μιλούν διαφορετικές γλώσσες. Σε αυτήν την περίπτωση, χρησιμοποιείται ειδικό λογισμικό που σας επιτρέπει να μεταφράζετε φράσεις από τη μια γλώσσα στην άλλη σε πραγματικό χρόνο. Παραδείγματα: Dudu.

ο Γεωκοινωνικά δίκτυασχηματίζουν κοινωνικές συνδέσεις με βάση τη γεωγραφική θέση του χρήστη. Σε αυτήν την περίπτωση, χρησιμοποιούνται διάφορα εργαλεία γεωεντοπισμού (για παράδειγμα, GPS ή υβριδικά συστήματα όπως η τεχνολογία AlterGeo), τα οποία καθιστούν δυνατό τον προσδιορισμό της τρέχουσας θέσης ενός χρήστη και τον συσχετισμό της θέσης του στο διάστημα με την τοποθεσία διάφορα μέρηκαι τους ανθρώπους γύρω.

ο Επαγγελματικά κοινωνικά δίκτυαδημιουργούνται για επικοινωνία σε επαγγελματικά θέματα, ανταλλαγή εμπειριών και πληροφοριών, αναζήτηση και προσφορά κενών θέσεων, ανάπτυξη επιχειρηματικές συνδέσεις. Παραδείγματα: Γιατρός στην εργασία, Professionals.ru, MyStarWay.com, LinkedIn, MarketingPeople, Viadeo.

ο Εξυπηρέτηση κοινωνικών δικτύωνεπιτρέπουν στους χρήστες να ενωθούν στο διαδίκτυο γύρω από τα κοινά τους ενδιαφέροντα, χόμπι ή για διάφορους λόγους. Για παράδειγμα, ορισμένοι ιστότοποι παρέχουν υπηρεσίες που επιτρέπουν στους χρήστες να δημοσιεύουν δημόσια πρόσβασηπροσωπικά στοιχεία που είναι απαραίτητα για την εύρεση συνεργατών. Παραδείγματα: LinkedIn, VKontakte.

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

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

2.1. Αρχείο- εφαρμογές διακομιστή

Προφανώς, η οργάνωση πληροφοριακών συστημάτων που βασίζονται στη χρήση αποκλειστικών διακομιστών αρχείων εξακολουθεί να είναι η πιο κοινή λόγω της διαθεσιμότητας μεγάλη ποσότητα προσωπικούς υπολογιστές διαφορετικά επίπεδαανάπτυξη και συγκριτική φθηνότητα σύνδεσης υπολογιστή τοπικά δίκτυα. Γιατί ένας τέτοιος οργανισμός προσελκύει προγραμματιστές πληροφοριακών συστημάτων που δεν είναι πολύ έμπειροι στον τομέα του προγραμματισμού συστημάτων; Πιθανότατα, το γεγονός ότι όταν βασιζόμαστε σε αρχιτεκτονικές αρχείων-διακομιστή, διατηρείται η αυτονομία του λογισμικού εφαρμογής (και του μεγαλύτερου μέρους του συστήματος) που εκτελείται σε κάθε δίκτυο Η/Υ. Στην πραγματικότητα, τα στοιχεία του συστήματος πληροφοριών που εκτελούνται σε διαφορετικούς υπολογιστές αλληλεπιδρούν μόνο λόγω της παρουσίας μιας κοινής αποθήκευσης αρχείων, η οποία αποθηκεύεται σε έναν διακομιστή αρχείων. Στην κλασική περίπτωση, δεν αντιγράφονται μόνο προγράμματα εφαρμογών σε κάθε υπολογιστή, αλλά και εργαλεία διαχείρισης βάσεων δεδομένων. Ο διακομιστής αρχείων είναι μια επέκταση μνήμης δίσκου που μοιράζονται όλοι οι υπολογιστές του συγκροτήματος (Εικόνα 2.1).

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

Φυσικά, το κύριο πλεονέκτημα είναι η απλότητα της οργάνωσης. Οι σχεδιαστές και οι προγραμματιστές συστημάτων πληροφοριών βρίσκονται στις οικείες και άνετες συνθήκες ενός υπολογιστή IBM σε περιβάλλον MS-DOS, Windows ή κάποιου ελαφρού Παραλλαγή Windows N.T. Υπάρχουν βολικά και ανεπτυγμένα εργαλεία για την ανάπτυξη μιας γραφικής διεπαφής χρήστη, εύχρηστα εργαλεία για την ανάπτυξη συστημάτων βάσεων δεδομένων ή/και DBMS. Αλλά από πολλές απόψεις αυτή η απλότητα είναι εμφανής. (Όπως λέει η ρωσική παροιμία, "Η απλότητα είναι χειρότερη από την κλοπή", και εδώ, κατά κανόνα, έχουμε την απλότητα που βασίζεται στην κλοπή προϊόντα λογισμικούγια υπολογιστή.)

Ρύζι. 2.1. Κλασική απόδοσηπληροφοριακό σύστημα στην αρχιτεκτονική αρχείων-διακομιστή

Πρώτον, το σύστημα πληροφοριών θα πρέπει να συνεργαστεί με τη βάση δεδομένων. Επομένως, αυτή η βάση δεδομένων πρέπει να σχεδιαστεί. Για κάποιο λόγο, οι προγραμματιστές εφαρμογών διακομιστή αρχείων πιστεύουν συχνά ότι λόγω της απλότητας των εργαλείων διαχείρισης βάσεων δεδομένων, το πρόβλημα του σχεδιασμού της βάσης δεδομένων μπορεί να παραμεληθεί. Φυσικά αυτό είναι λάθος. Μια βάση δεδομένων είναι μια βάση δεδομένων. Όσο καλύτερα είναι σχεδιασμένο, τόσο μεγαλύτερες είναι οι πιθανότητες να χρησιμοποιηθεί στη συνέχεια το πληροφοριακό σύστημα αποτελεσματικά. Φυσικά, η πολυπλοκότητα του σχεδιασμού της βάσης δεδομένων καθορίζεται από την αντικειμενική πολυπλοκότητα της μοντελοποιημένης θεματικής περιοχής. Αλλά, στην πραγματικότητα, από τι πρέπει να προκύπτει ότι οι εφαρμογές διακομιστή αρχείων είναι κατάλληλες μόνο σε απλές θεματικές περιοχές;

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

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

Κατ' αρχήν, μια οργάνωση διακομιστή αρχείων, όπως φαίνεται στο Σχήμα 2.1, δεν έρχεται σε αντίθεση με τη συμμόρφωση με τις σημειωθείσες προϋποθέσεις. Ένα παράδειγμα συστήματος που πληροί αυτές τις προϋποθέσεις, αλλά βασίζεται σε μια αρχιτεκτονική διακομιστή αρχείων, είναι ο παλαιότερα δημοφιλής «διακομιστής βάσεων δεδομένων» Informix SE.

Μεγάλη σημείωση:
Για να διατηρήσουμε τη σαφήνεια της περαιτέρω παρουσίασης, πρέπει να αποσαφηνίσουμε κάπως την ορολογία. Δεν είναι τυχαίο που γράψαμε "διακομιστής βάσης δεδομένων" σε εισαγωγικά σε σχέση με το Informix SE DBMS. Όταν χρησιμοποιείτε αυτό το σύστημα, ένα αντίγραφο λογισμικόΤο DBMS υποστηρίχτηκε για κάθε περίοδο λειτουργίας που ξεκίνησε από το χρήστη με το DBMS. Σε γενικές γραμμές, για κάθε διεργασία χρήστη που αλληλεπιδρά με τη βάση δεδομένων, δημιουργήθηκε μια διαδικασία υπηρεσίας DBMS, η οποία εκτελούσε τον ίδιο επεξεργαστή με τη διαδικασία χρήστη (δηλαδή στην πλευρά του πελάτη). Κάθε μία από αυτές τις διεργασίες υπηρεσίας στην πραγματικότητα συμπεριφέρθηκε σαν να ήταν ο μόνος εκπρόσωπος του DBMS. Όλος ο συγχρονισμός της πιθανής παράλληλης εργασίας με τη βάση δεδομένων πραγματοποιήθηκε στο επίπεδο των αρχείων εξωτερικής μνήμης που περιείχαν τη βάση δεδομένων. Ας συμφωνήσουμε από εδώ και στο εξής να καλούμε τέτοια DBMS όχι διακομιστές βάσεων δεδομένων, αλλά συστήματα διαχείρισης βάσεων δεδομένων που βασίζονται στην αρχιτεκτονική διακομιστή αρχείων (DBMS-FS).

Με έναν πραγματικό διακομιστή βάσης δεδομένων θα κατανοήσουμε μια οντότητα λογισμικού που συνδέεται με την αντίστοιχη(ες) βάση(ες), που υπάρχει, γενικά, ανεξάρτητα από την ύπαρξη διεργασιών χρήστη (πελάτη) και εκτελείται, γενικά (αν και όχι απαραίτητα) σε αποκλειστικό υλικό (εμείς σκόπιμα Χρησιμοποιούμε όχι πολύ συγκεκριμένους όρους «εκπαίδευση λογισμικού» και «αποκλειστικό υλικό», επειδή η συγκεκριμένη εφαρμογή τους διαφέρει σε διαφορετικούς διακομιστέςβάσεις δεδομένων).

Οι πραγματικοί διακομιστές βάσεων δεδομένων είναι πολύ πιο πολύπλοκοι στην οργάνωση από το DBMS-FS, αλλά παρέχουν πιο λεπτή και αποτελεσματική διαχείριση βάσεων δεδομένων. Σε όλο το υπόλοιπο αυτού του μαθήματος, όταν χρησιμοποιούμε τον όρο «διακομιστής βάσεων δεδομένων», θα εννοούμε πραγματικούς διακομιστές βάσεων δεδομένων.

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

Τρίτον, η διεπαφή των ανεπτυγμένων διακομιστών βάσεων δεδομένων βασίζεται στη χρήση μιας γλώσσας βάσης δεδομένων υψηλού επιπέδου Δεδομένα SQL, που σας επιτρέπει να χρησιμοποιήσετε κυκλοφορίας δικτύουμεταξύ του πελάτη και του διακομιστή βάσης δεδομένων μόνο στο χρήσιμους σκοπούς(οι χειριστές αποστέλλονται κυρίως από τον πελάτη στον διακομιστή Γλώσσα SQL, από διακομιστή σε πελάτη - τα αποτελέσματα των τελεστών εκτέλεσης). Σε έναν οργανισμό διακομιστή αρχείων, ο πελάτης συνεργάζεται με διαγραμμένα αρχεία, που προκαλεί σημαντική υπερφόρτωση κίνησης (καθώς το DBMS-FS λειτουργεί στην πλευρά του πελάτη, για την ανάκτηση χρήσιμων δεδομένων, στη γενική περίπτωση, είναι απαραίτητο να προβάλετε ολόκληρο το αντίστοιχο αρχείο στην πλευρά του πελάτη).

Γενικά, σε μια αρχιτεκτονική διακομιστή αρχείων έχουμε έναν "χοντρό" πελάτη και έναν πολύ "λεπτό" διακομιστή με την έννοια ότι σχεδόν όλη η εργασία γίνεται από την πλευρά του πελάτη και ο διακομιστής απαιτεί μόνο επαρκή χωρητικότητα αποθήκευσης δίσκου (Εικόνα 2.2 ).

Ρύζι. 2.2. "Χοντρός" πελάτης και "λεπτός" διακομιστής στην αρχιτεκτονική αρχείων-διακομιστή

Σύντομα συμπεράσματα.Απλή, μικρής κλίμακας και έτοιμη για έναν χρήστη, μια εφαρμογή διακομιστή αρχείων μπορεί να σχεδιαστεί, να αναπτυχθεί και να εντοπιστεί σφάλματα πολύ γρήγορα. Πολύ συχνά για μικρή εταιρείαΓια να διατηρήσετε, για παράδειγμα, αρχεία προσωπικού, αρκεί να έχετε ένα απομονωμένο σύστημα που λειτουργεί σε ξεχωριστό υπολογιστή. Φυσικά και σε αυτή την περίπτωση απαιτείται μεγάλη προσοχή από τους τελικούς χρήστες (ή τους διαχειριστές, των οποίων η διαθεσιμότητα σε αυτή την περίπτωση είναι αμφισβητήσιμη) για την ασφαλή αποθήκευση και διατήρηση της ακεραιότητας των δεδομένων. Ωστόσο, σε ελαφρώς πιο περίπλοκες περιπτώσεις (για παράδειγμα, κατά την οργάνωση ενός συστήματος πληροφοριών για την υποστήριξη ενός έργου που εκτελείται από μια ομάδα), οι αρχιτεκτονικές διακομιστή αρχείων καθίστανται ανεπαρκείς.

Εφαρμογές πελάτη-διακομιστή

Κάτω από εφαρμογή πελάτη-διακομιστήθα κατανοήσουμε ένα σύστημα πληροφοριών που βασίζεται στη χρήση διακομιστών βάσεων δεδομένων (δείτε τη μεγάλη σημείωση στο τέλος της ενότητας 2.1). Μια γενική αναπαράσταση ενός πληροφοριακού συστήματος σε μια αρχιτεκτονική πελάτη-διακομιστή φαίνεται στο Σχήμα 2.3.

    Στην πλευρά του πελάτη, εκτελείται ο κώδικας εφαρμογής, ο οποίος περιλαμβάνει απαραίτητα στοιχεία που υποστηρίζουν τη διεπαφή τελικού χρήστη, παράγουν αναφορές και εκτελούν άλλες λειτουργίες που αφορούν συγκεκριμένες εφαρμογές (προς το παρόν, δεν θα μας ενδιαφέρει ο τρόπος κατασκευής του κώδικα εφαρμογής) . Το τμήμα πελάτη της εφαρμογής αλληλεπιδρά με το τμήμα πελάτη του λογισμικού διαχείρισης βάσης δεδομένων, το οποίο, στην πραγματικότητα, είναι ο μεμονωμένος εκπρόσωπος του ΣΔΒΔ για την εφαρμογή.

(Εδώ εμφανίζονται πάλι ελλείψεις στην ορολογία. Συνήθως, όταν μια εταιρεία ανακοινώνει την κυκλοφορία ενός άλλου διακομιστή βάσης δεδομένων, εννοείται σιωπηρά ότι υπάρχει επίσης ένα στοιχείο πελάτη αυτού του προϊόντος. Ο συνδυασμός "τμήμα πελάτη του διακομιστή βάσης δεδομένων" φαίνεται κάπως περίεργος, αλλά θα πρέπει να χρησιμοποιήσουμε αυτόν τον όρο.)

Ρύζι. 2.3. Γενική αναπαράσταση ενός πληροφοριακού συστήματος σε αρχιτεκτονική πελάτη-διακομιστή

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

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

Εδώ πρέπει να γίνουν δύο ακόμη παρατηρήσεις.

Συνήθως, οι εταιρείες που παράγουν προηγμένους διακομιστές βάσεων δεδομένων προσπαθούν να διασφαλίσουν ότι τα προϊόντα τους μπορούν να χρησιμοποιηθούν όχι μόνο στα σημερινά τυπικά δίκτυα που βασίζονται σε TCP/IP, αλλά σε δίκτυα που βασίζονται σε άλλα πρωτόκολλα (για παράδειγμα, SNA ή IPX/SPX). Επομένως, κατά την οργάνωση αλληλεπιδράσεων δικτύου μεταξύ των τμημάτων του πελάτη και του διακομιστή του DBMS, όχι τυπικά μέσαυψηλού επιπέδου (για παράδειγμα, μηχανισμοί φωλιών λογισμικού ή κλήσεις απομακρυσμένων διαδικασιών), αλλά τα δικά τους λειτουργικά παρόμοια εργαλεία, λιγότερο εξαρτημένα από τα χαρακτηριστικά των πρωτοκόλλων μεταφοράς δικτύου. Όταν μιλάμε για μια διεπαφή βασισμένη στη γλώσσα SQL, πρέπει να γνωρίζουμε ότι παρά τις τιτάνιες προσπάθειες για την τυποποίηση αυτής της γλώσσας, δεν υπάρχει καμία υλοποίηση στην οποία να μην επεκτείνονται τα χαρακτηριστικά της τυπικής γλώσσας. Η απρόσεκτη χρήση των επεκτάσεων γλώσσας οδηγεί σε πλήρη εξάρτηση της εφαρμογής από έναν συγκεκριμένο κατασκευαστή διακομιστή βάσης δεδομένων.

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

    Ο διακομιστής μεταγλωττίζει τη δήλωση που προκύπτει. Δεν θα σταθούμε εδώ στο ποια γλώσσα-στόχος χρησιμοποιείται από έναν συγκεκριμένο μεταγλωττιστή. Διαφορετικές υλοποιήσεις ακολουθούν διαφορετικές προσεγγίσεις (βλ. Μέρος 4 για παραδείγματα). Το κυριότερο είναι ότι σε κάθε περίπτωση, με βάση τις πληροφορίες που περιέχονται στους πίνακες καταλόγου της βάσης δεδομένων, η μη διαδικαστική αναπαράσταση του χειριστή μετατρέπεται σε κάποια διαδικασία για την εκτέλεσή της. Στη συνέχεια (εάν η μεταγλώττιση ολοκληρωθεί με επιτυχία), η εντολή εκτελείται. Και πάλι δεν θα συζητήσουμε τεχνικές λεπτομέρειες καθώς διαφέρουν μεταξύ των υλοποιήσεων. Ας δούμε τις πιθανές ενέργειες των δηλώσεων SQL.
      Ένας τελεστής μπορεί να ανήκει στην κατηγορία τελεστών για τον ορισμό (ή τη δημιουργία) αντικειμένων βάσης δεδομένων (θα ήταν πιο ακριβές και σωστό να μιλάμε για στοιχεία σχήματος βάσης δεδομένων ή αντικείμενα μετα-βάσης δεδομένων). Συγκεκριμένα, μπορούν να οριστούν τομείς, πίνακες, περιορισμοί ακεραιότητας, ενεργοποιητές, δικαιώματα χρήστη και αποθηκευμένες διαδικασίες. Σε κάθε περίπτωση, όταν εκτελείται η δήλωση δημιουργίας στοιχείου σχήματος βάσης δεδομένων, οι αντίστοιχες πληροφορίες τοποθετούνται στους πίνακες καταλόγου της βάσης δεδομένων (στους πίνακες μεταδεδομένων). Οι περιορισμοί ακεραιότητας συνήθως αποθηκεύονται στη βάση μεταδεδομένων απευθείας σε μια αναπαράσταση κειμένου. Για ενέργειες που ορίζονται σε ενεργοποιητές και αποθηκευμένες διαδικασίες, δημιουργείται και αποθηκεύεται σε πίνακες καταλόγου ο εκτελέσιμος κώδικας της διαδικασίας. Σημειώστε ότι οι περιορισμοί ακεραιότητας, οι ενεργοποιήσεις και οι αποθηκευμένες διαδικασίες είναι, κατά μία έννοια, εκπρόσωποι της εφαρμογής στη βάση δεδομένων που διατηρείται από τον διακομιστή. αποτελούν τη βάση του backend της εφαρμογής (βλ. παρακάτω). Όταν εκτελούνται δηλώσεις ανάκτησης δεδομένων, με βάση τα περιεχόμενα των πινάκων που επηρεάζονται από το ερώτημα, και πιθανώς χρησιμοποιώντας ευρετήρια που διατηρούνται στη βάση δεδομένων, σχηματίζεται ένα σύνολο δεδομένων αποτελεσμάτων (εσκεμμένα δεν χρησιμοποιούμε τον όρο "πίνακας αποτελεσμάτων" εδώ επειδή: ανάλογα με τον συγκεκριμένο τύπο δήλωσης, το αποτέλεσμα μπορεί να ταξινομηθεί και οι πίνακες, δηλαδή, οι σχέσεις είναι αδιάτακτες εξ ορισμού). Το τμήμα διακομιστή του DBMS στέλνει το αποτέλεσμα στο τμήμα πελάτη και η τελική επεξεργασία πραγματοποιείται στο τμήμα πελάτη της εφαρμογής. Κατά την εκτέλεση δηλώσεων τροποποίησης περιεχομένου βάσης δεδομένων (INSERT, UPDATE, DELETE), ελέγχεται ότι δεν θα παραβιάζονται οι περιορισμοί ακεραιότητας που ορίζονται σε αυτό το σημείο (αυτοί που επαληθεύονται αμέσως), μετά την οποία εκτελείται η αντίστοιχη ενέργεια (συνοδευόμενη από τροποποίηση όλων σχετικά ευρετήρια και αλλαγές καταγραφής). Στη συνέχεια, ο διακομιστής ελέγχει εάν αυτή η αλλαγή επηρεάζει την κατάσταση ενεργοποίησης οποιουδήποτε κανόνα ετικέτας και εάν εντοπιστεί ένας τέτοιος κανόνας, εκτελεί τη διαδικασία για τη δράση του. Αυτή η διαδικασία μπορεί να περιλαμβάνει πρόσθετους χειριστέςτροποποιήσεις στη βάση δεδομένων που μπορούν να προκαλέσουν την ενεργοποίηση άλλων κανόνων, κ.λπ. Μπορούμε να εξετάσουμε εκείνες τις ενέργειες που εκτελούνται στον διακομιστή της βάσης δεδομένων κατά τον έλεγχο της ικανοποίησης των περιορισμών ακεραιότητας και όταν ενεργοποιούνται οι κανόνες για να αντιπροσωπεύουν τις ενέργειες της πλευράς διακομιστή της εφαρμογής. Κατά την εκτέλεση δηλώσεων τροποποίησης σχήματος βάσης δεδομένων (προσθήκη ή αφαίρεση στηλών από υπάρχοντες πίνακες, αλλαγή του τύπου δεδομένων μιας υπάρχουσας στήλης ενός υπάρχοντος πίνακα, κ.λπ.), μπορούν επίσης να ενεργοποιηθούν ενεργοποιητές, δηλαδή, με άλλα λόγια, η πλευρά διακομιστή της εφαρμογής μπορεί να εκτελεστεί. Ομοίως, οι ενεργοποιητές μπορούν να ενεργοποιηθούν όταν καταστρέφονται αντικείμενα σχήματος βάσης δεδομένων (τομείς, πίνακες, περιορισμοί ακεραιότητας, κ.λπ.). Μια ειδική κλάση εντολών SQL είναι εκείνες που καλούν προκαθορισμένες αποθηκευμένες διαδικασίες που είναι αποθηκευμένες στη βάση δεδομένων. Εάν μια αποθηκευμένη διαδικασία ορίζεται χρησιμοποιώντας μια αρκετά προηγμένη γλώσσα που περιλαμβάνει τόσο μη διαδικαστικές δηλώσεις SQL όσο και καθαρά διαδικαστικές δομές (για παράδειγμα, γλώσσα PL/SQL της Oracle), τότε ένα σημαντικό μέρος της εφαρμογής μπορεί να τοποθετηθεί σε μια τέτοια διαδικασία, η οποία , όταν εκτελείται η δήλωση κλήσης διαδικασίας, θα εκτελεστεί από την πλευρά του διακομιστή και όχι από την πλευρά του πελάτη. Κατά την εκτέλεση της δήλωσης ολοκλήρωσης συναλλαγής, ο διακομιστής πρέπει να ελέγχει τη συμμόρφωση με όλους τους λεγόμενους περιορισμούς αναβαλλόμενης ακεραιότητας (τέτοιοι περιορισμοί περιλαμβάνουν περιορισμούς που επιβάλλονται στα περιεχόμενα ολόκληρου του πίνακα της βάσης δεδομένων ή σε πολλούς πίνακες ταυτόχρονα· για παράδειγμα, ο συνολικός μισθός του Οι υπάλληλοι του τμήματος 999 δεν πρέπει να υπερβαίνουν τα 150 εκατομμύρια ρούβλια.). Και πάλι, ο έλεγχος των αναβαλλόμενων περιορισμών ακεραιότητας μπορεί να αντιμετωπιστεί ως εκτέλεση της εφαρμογής από την πλευρά του διακομιστή.

Όπως μπορείτε να δείτε, σε έναν οργανισμό πελάτη-διακομιστή, οι πελάτες μπορεί να είναι αρκετά «λεπτοί» ​​και ο διακομιστής πρέπει να είναι αρκετά «παχύς» ώστε να μπορεί να ικανοποιήσει τις ανάγκες όλων των πελατών (Εικόνα 2.4).

Ρύζι. 2.4. "Λεπτός" πελάτης και "χοντρός" διακομιστής στην αρχιτεκτονική πελάτη-διακομιστή

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

Στην πραγματικότητα, η έννοια της προσωρινής αποθήκευσης τοπικής βάσης δεδομένων είναι μια ειδική περίπτωση της έννοιας των αναπαραγόμενων (ή, όπως αποκαλούνται μερικές φορές στη ρωσική βιβλιογραφία, των αντιγραφόμενων) βάσεων δεδομένων. Όπως γενικά, για την υποστήριξη μιας τοπικής προσωρινής μνήμης βάσης δεδομένων, το λογισμικό του σταθμού εργασίας πρέπει να περιέχει ένα στοιχείο διαχείρισης βάσης δεδομένων - μια απλοποιημένη έκδοση του διακομιστή βάσης δεδομένων, η οποία, για παράδειγμα, ενδέχεται να μην παρέχει πρόσβαση πολλών χρηστών. Ένα ξεχωριστό πρόβλημα είναι η διασφάλιση της συνέπειας (συνοχής) μεταξύ της κρυφής μνήμης και της κοινής βάσης δεδομένων. Δυνατό εδώ διάφορες λύσεις- από την αυτόματη διατήρηση της συνέπειας μέσω του βασικού λογισμικού διαχείρισης βάσεων δεδομένων έως την πλήρη εξωτερική ανάθεση αυτής της εργασίας στρώμα εφαρμογής. Σε κάθε περίπτωση, οι πελάτες γίνονται παχύτεροι χωρίς να κάνουν τον διακομιστή πιο λεπτό (Εικόνα 2.5).

Ρύζι. 2.5. "Fat" πελάτης και "fat" διακομιστής σε αρχιτεκτονική πελάτη-διακομιστή με υποστήριξη για τοπική κρυφή μνήμη στην πλευρά του πελάτη

Ας διατυπώσουμε μερικά προκαταρκτικά συμπεράσματα. Με την πρώτη ματιά, η αρχιτεκτονική πελάτη-διακομιστή φαίνεται πολύ πιο ακριβή από την αρχιτεκτονική διακομιστή αρχείων. Απαιτεί ισχυρότερο εξοπλισμό (σύμφωνα με τουλάχιστον, για τον διακομιστή) και σημαντικά πιο προηγμένα εργαλεία διαχείρισης βάσεων δεδομένων. Ωστόσο, αυτό ισχύει μόνο εν μέρει. Ένα τεράστιο πλεονέκτημα της αρχιτεκτονικής πελάτη-διακομιστή είναι η επεκτασιμότητα και, γενικά, η ικανότητα ανάπτυξης.

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

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

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

μια φορά κι έναν καιρό, στην αυγή της ανάπτυξης του Διαδικτύου, οι δημιουργοί Παγκόσμιος Ιστόςτο φανταζόταν ως κοινό χώρο ανταλλαγής πληροφοριών. Το Διαδίκτυο υπήρχε αρχικά ως ένα δίκτυο προσανατολισμένο στα έγγραφα και οι πρώτοι ιστότοποι ήταν πρωτόγονοι διακομιστές αρχείων που επέστρεφαν στατικές σελίδες HTML στους πελάτες που τις ζήτησαν.

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

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

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

Οι τεχνολογίες πελάτη χρησιμοποιούνται κυρίως για την αύξηση της διαδραστικότητας των εφαρμογών, για παράδειγμα, για τον έλεγχο της ορθότητας των δεδομένων που έχουν εισαχθεί χωρίς πρόσθετη πρόσβαση στον διακομιστή και για τη δημιουργία μιας βολικής διεπαφής χρήστη. Έτσι, σύγχρονα προγράμματα περιήγησης ιστού και μερικά πελάτες emailμπορεί να ερμηνεύει κώδικα σε γλώσσες δέσμης ενεργειών, να εκτελεί μικροεφαρμογές Java και στοιχεία ελέγχου ActiveX και να χρησιμοποιεί άλλα πρόσθετα όπως το Macromedia Flash Player, τα προγράμματα προβολής παρουσιάσεων QuickTime και τα εργαλεία αναπαραγωγής πολυμέσων.

Κώδικας που ερμηνεύει το πρόγραμμα περιήγησης

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

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

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

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

Οι μικροεφαρμογές μπορούν να εκτελούνται σε όλες τις πλατφόρμες για τις οποίες υπάρχουν εικονικές μηχανές Java. Ο τρόπος με τον οποίο οι μικροεφαρμογές αλληλεπιδρούν με έναν υπολογιστή-πελάτη είναι επίσης περιορισμένος, για παράδειγμα, το σύστημα αρχείων και οι εφαρμογές του δεν είναι προσβάσιμα σε αυτές και η πρόσβαση στο δίκτυο από μια μικροεφαρμογή είναι δυνατή μόνο στον υπολογιστή από τον οποίο έγινε λήψη. Ωστόσο, η μικροεφαρμογή μπορεί να ελεγχθεί καθορίζοντας τις παραμέτρους της (για παράδειγμα, χρώμα, γραμματοσειρά κ.λπ.) στο κείμενο της σελίδας HTML που την περιέχει ή στον κώδικα σε γλώσσες δέσμης ενεργειών της ίδιας σελίδας. Τα περισσότερα προγράμματα περιήγησης έχουνπροσβάσιμο στον χρήστη

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

Στοιχεία ελέγχου ActiveX Μερικά από τα σύγχρονα προγράμματα περιήγησης (ιδιαίτερα η Microsoft Internet Explorer

) μπορεί να χρησιμεύσει ως κοντέινερ για τα στοιχεία ελέγχου ActiveX ειδικούς διακομιστές COM που εκτελούνται στο χώρο διευθύνσεων του προγράμματος περιήγησης. Σύνδεσμοι σε τέτοια στοιχεία ελέγχου ενδέχεται να περιέχονται σε μια ιστοσελίδα. Τα ίδια τα στοιχεία ελέγχου ActiveX είναι δυναμικά φορτωμένες βιβλιοθήκες που εκτελούνται στο χώρο διευθύνσεων του προγράμματος περιήγησης.

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

δεν εγγυάται την απουσία δυνητικά επιβλαβούς περιεχομένου, σας επιτρέπει να προσδιορίσετε την πηγή του.

Σημειώστε ότι τα σημερινά στοιχεία ελέγχου ActiveX χρησιμοποιούνται κυρίως σε intranets παρά σε δημόσιους ιστότοπους.

Εφαρμογές Macromedia Flash Μια άλλη πολύ δημοφιλής τεχνολογία web που βασίζεται στην εκτέλεση κώδικα σε μια εφαρμογή πελάτη είναι οι εφαρμογές Macromedia Flash. Το Macromedia Flash Player, όπως και η εικονική μηχανή Java, διαθέτειαναπηρίες από την άποψη της πρόσβασης στους πόρους του υπολογιστή-πελάτη. Ετσι,Εφαρμογές Flash δεν έχουν πρόσβαση στο σύστημα αρχείων, με εξαίρεση τον κατάλογο υπηρεσιών Macromedia Flash Player, και η πρόσβαση σε εξωτερικές συσκευές περιορίζεται σε μικρόφωνα και βιντεοκάμερες. Η πρόσβαση σε πόρους δικτύου περιορίζεται στον τομέα από τον οποίο ελήφθη.αυτή η αίτηση . Σημειώστε ότι, όπως οι μικροεφαρμογές Java και τα στοιχεία ελέγχου ActiveX, οι εφαρμογές Flash μπορούν να ελεγχθούν χρησιμοποιώνταςΚώδικας JavaScript

, παρουσιάζεται στην ίδια σελίδα.

Επειδή το Macromedia Flash Player για τον Microsoft Internet Explorer είναι από μόνο του στοιχείο ελέγχου ActiveX, χρησιμοποιεί ορισμένες από τις δυνατότητες των στοιχείων ελέγχου ActiveX για πρόσβαση στις ιδιότητες εφαρμογής Flash από γλώσσες δέσμης ενεργειών. Υπάρχει μια σειρά από άλλα εργαλεία, που συνήθως υλοποιούνται με τη μορφή των λεγόμενων plug-ins, τα οποία είναι εκτελέσιμος κώδικας. Ταυτόχρονα, τα σύγχρονα προγράμματα περιήγησης διαθέτουν μέσα για τον περιορισμό των δυνατοτήτων που σχετίζονται με τη φόρτωση και την εκτέλεσή τους.μπορεί να περιέχει συνδέσμους προς στοιχεία ελέγχου ActiveX, εφαρμογές Flash, μικροεφαρμογές. Αλλά τα πιο ευρέως χρησιμοποιούμενα είναι εργαλεία για τη δημιουργία εφαρμογών Ιστού που τρέχουν υπό τον έλεγχο διακομιστών Ιστού και δημιουργούν δυναμικές σελίδες HTML με κώδικα ενσωματωμένο σε αυτές σε γλώσσες δέσμης ενεργειών, που προορίζονται για ερμηνεία από το πρόγραμμα περιήγησης.

Τεχνολογίες διακομιστή

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

Σενάρια και εκτελέσιμα

Μία από τις πρώτες τεχνολογίες για τη δημιουργία διαδικτυακών εφαρμογών που εκτελούνται σε διακομιστές ήταν η Common Gateway Interface (CGI). Κατέστησε δυνατή τη δημιουργία και την εκτέλεση εφαρμογών διακομιστή στις οποίες έχετε πρόσβαση καθορίζοντας το όνομά τους (και μερικές φορές τις παραμέτρους) στη διεύθυνση URL. Οι πληροφορίες εισόδου για τέτοιες εφαρμογές είναι τα περιεχόμενα της κεφαλίδας HTTP ή του σώματος της αίτησης, ανάλογα με το πρωτόκολλο που χρησιμοποιείται.

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

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

Το πρόβλημα της περιορισμένης απόδοσης των εφαρμογών Ιστού που εκτελούνται σε ξεχωριστό χώρο διευθύνσεων μπορεί να λυθεί δημιουργώντας την εφαρμογή ως βιβλιοθήκη που φορτώνεται στον χώρο διευθύνσεων του διακομιστή web και, εάν είναι απαραίτητο, παραμένει εκεί για να χειρίζεται επακόλουθα αιτήματα από άλλους πελάτες (είναι σαφές ότι σε αυτήν την περίπτωση ο web -ο διακομιστής πρέπει να υποστηρίζει τη φόρτωση τέτοιων βιβλιοθηκών). Παρόμοιες εφαρμογές για το Microsoft Internet Information Service ονομάζονται ISAPI (Internet Server Application Program Interface) και τέτοιες βιβλιοθήκες για τον πολύ δημοφιλή διακομιστή web Apache ονομάζονται Apache DSO (Dynamic Shared Objects). Αυτές οι τεχνολογίες υπάρχουν ήδη εδώ και αρκετό καιρό. πολύς καιρός, αλλά εξακολουθούν να είναι αρκετά δημοφιλή.

Εφαρμογές Ιστού που βασίζονται στη χρήση βιβλιοθηκών που φορτώνονται στον χώρο διευθύνσεων του διακομιστή Ιστού

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

Ιστοσελίδες με αποσπάσματα κώδικα διακομιστή

ASP και ASP.NET

Το επόμενο βήμα στην ανάπτυξη τεχνολογιών για τη δημιουργία εφαρμογών Διαδικτύου ήταν η εμφάνιση εργαλείων που καθιστούν δυνατό τον διαχωρισμό των εργασιών του σχεδιασμού ιστοσελίδων από τις εργασίες που σχετίζονται με την υλοποίηση της λειτουργικότητας της εφαρμογής. Η πρώτη τέτοια τεχνολογία ήταν οι Active Server Pages (ASP). Η κύρια ιδέα του ASP είναι η δημιουργία ιστοσελίδων με τμήματα κώδικα ενσωματωμένα σε αυτές σε γλώσσες δέσμης ενεργειών. Ωστόσο, σε αντίθεση με τα μέσα χρήσης γλωσσών δέσμης ενεργειών για την επέκταση της λειτουργικότητας των προγραμμάτων περιήγησης που συζητήθηκαν παραπάνω, αυτά τα τμήματα κώδικα ερμηνεύονται όχι από το πρόγραμμα περιήγησης, αλλά από μια βιβλιοθήκη ISAPI που προορίζεται για αυτόν τον σκοπό, η οποία αποτελεί μέρος του Διακομιστή Πληροφοριών Διαδικτύου . Το ενσωματωμένο τμήμα κώδικα αντικαθίσταται από το αποτέλεσμα της εκτέλεσής του και η δυναμική σελίδα που προκύπτει μεταδίδεται στο πρόγραμμα περιήγησης του χρήστη.

Μία από τις πιο δημοφιλείς τεχνολογίες σήμερα που υλοποιεί την ιδέα της δημιουργίας ιστοσελίδων με τμήματα κώδικα είναι το κλειδί ASP .NET στην αρχιτεκτονική Microsoft .NET Framework. Η κύρια διαφορά μεταξύ αυτής της τεχνολογίας και του ASP όσον αφορά την αρχιτεκτονική εφαρμογών είναι ότι ο κώδικας που υπάρχει στην ιστοσελίδα δεν ερμηνεύεται, αλλά μεταγλωττίζεται και αποθηκεύεται προσωρινά, κάτι που βοηθά στη βελτίωση της απόδοσης της εφαρμογής. Επιπλέον, αυτή η τεχνολογία σάς επιτρέπει να δημιουργήσετε τα λεγόμενα στοιχεία διακομιστή που επιστρέφουν κώδικα HTML στο πρόγραμμα περιήγησης με τμήματα κώδικα που ερμηνεύονται από το πρόγραμμα περιήγησης σε γλώσσες δέσμης ενεργειών και μπορούν να παρέχουν μια πιο βολική διεπαφή χρήστη από τον κανονικό κώδικα HTML. Σημαντικά χαρακτηριστικά των στοιχείων διακομιστή ASP .NET είναι η δυνατότητα επεξεργασίας συμβάντων που συμβαίνουν σε μια εφαρμογή πελάτη στον διακομιστή και η δυνατότητα δημιουργίας κώδικα HTML, WML και CHTML ανάλογα με τον τύπο του πελάτη και τις γλώσσες σήμανσης και μεταφορά δεδομένων πρωτόκολλα που υποστηρίζει.

Το ASP .NET 2.0, μια περαιτέρω ανάπτυξη της τεχνολογίας ASP .NET, θα είναι διαθέσιμο στους προγραμματιστές αργότερα φέτος. Με τη βοήθειά του, οι προγραμματιστές θα έχουν πρόσβαση σε ένα διευρυμένο σύνολο έτοιμων μπλοκ, προτύπων σελίδων, διεπαφών εφαρμογών και εργαλείων για την απλοποίηση της διαμόρφωσης εμφάνισηεφαρμογές, καθώς και εργαλεία εξατομίκευσης, εργαλεία για την υποστήριξη εντοπισμού εφαρμογών και βοηθητικά προγράμματα ανάπτυξης που σας επιτρέπουν να διανέμετε εφαρμογές χωρίς να παρέχετε πηγαίος κώδικαςκαι σε στοιχεία για τη δημιουργία πυλών, την πρόσβαση σε προστατευμένες πληροφορίες, για την άνετη εμφάνιση δεδομένων, τα οποία θα σας επιτρέψουν να δημιουργήσετε εφαρμογές Ιστού που είναι κοντά από την άποψη της ευκολίας και της διεπαφής χρήστη με τις εφαρμογές των Windows.

Σελίδες διακομιστή Java

Μαζί με το ASP και το ASP .NET, υπάρχουν και άλλες τεχνολογίες που υλοποιούν την ιδέα της τοποθέτησης κώδικα μέσα σε μια ιστοσελίδα που εκτελείται από έναν διακομιστή ιστού. Το πιο διάσημο από αυτά σήμερα είναι η τεχνολογία JSP (Java Server Pages), η κύρια ιδέα της οποίας είναι μια εφάπαξ μεταγλώττιση κώδικα Java (servlet) την πρώτη φορά που γίνεται πρόσβαση, η εκτέλεση των μεθόδων αυτού του servlet και τοποθετώντας τα αποτελέσματα της εκτέλεσης αυτών των μεθόδων σε ένα σύνολο δεδομένων που αποστέλλονται στο πρόγραμμα περιήγησης.

Εφαρμογές Ιστού που βασίζονται στη χρήση ιστοσελίδων με ενσωματωμένα τμήματα κώδικα διακομιστή

Μιλώντας για την τεχνολογία JSP, δεν μπορούμε να μην αναφέρουμε τη σχετικά νέα προδιαγραφή της Sun που ονομάζεται Java Server Faces. Αυτή η προδιαγραφή περιγράφει τους κανόνες για τη δημιουργία εφαρμογών Ιστού με βολικό περιβάλλον χρήστη (παρόμοιο σε λειτουργικότητα με τη διεπαφή εφαρμογών των Windows) και την ανάπτυξη στοιχείων διακομιστή που υλοποιούν παρόμοια διεπαφή. Τα εργαλεία ανάπτυξης εφαρμογών Java που υποστηρίζουν αυτήν την προδιαγραφή θα πρέπει ιδανικά να σας επιτρέπουν να δημιουργείτε εφαρμογές Ιστού που βασίζονται σε J2EE με περίπου την ίδια ταχύτητα και ευκολία στη χρήση με τα εργαλεία ανάπτυξης εφαρμογών .NET.

Μεταξύ άλλων δημοφιλών τεχνολογιών που υλοποιούν τη δημιουργία ιστοσελίδων με τμήματα κώδικα που εκτελούνται στον διακομιστή, σημειώνουμε την PHP (Personal Home Pages). Αυτή η τεχνολογία βασίζεται στη χρήση εφαρμογών CGI που ερμηνεύουν τον κώδικα που είναι ενσωματωμένος σε μια σελίδα HTML σε μια γλώσσα δέσμης ενεργειών. Παρά τις εγγενείς ελλείψεις σε όλες τις εφαρμογές CGI, η PHP απολαμβάνει σημαντική δημοτικότητα λόγω της ευκολίας ανάπτυξης και της διαθεσιμότητάς της σε διάφορες πλατφόρμες, ειδικά όταν δημιουργείται εφαρμογές που δεν έχουν υψηλές απαιτήσεις για επεκτασιμότητα και αξιοπιστία.

Εφαρμογή λογισμικού υποδομής γενικής χρήσης

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

Τα επαγγελματικά αντικείμενα μπορούν να έχουν διαφορετική λειτουργικότητα. Κατά κανόνα, παρέχουν πρόσβαση σε δεδομένα που διαχειρίζονται ορισμένα DBMS διακομιστών, συχνά πρόσβαση σε δεδομένα από εταιρικά συστήματα πληροφοριών. Πολύ συχνά, τα επιχειρηματικά αντικείμενα υλοποιούν κάποιο μέρος ενός εταιρικού συστήματος πληροφοριών, η δημιουργία του οποίου αρχικά περιλάμβανε τη συμπερίληψη ενός εξωτερικού διακομιστή web ως αναπόσπαστο μέρος του εταιρικού συστήματος πληροφοριών (για παράδειγμα, ως μία από τις πηγές δεδομένων για μια εφαρμογή CRM ). Τα έτοιμα συστήματα CRM και ERP από κορυφαίους κατασκευαστές, όπως SAP, PeopleSoft, Siebel, περιέχουν συνήθως παρόμοια επιχειρηματικά αντικείμενα και συχνά έτοιμες εφαρμογές web που έχουν πρόσβαση σε αυτά, για παράδειγμα, πύλες για πελάτες και απομακρυσμένους χρήστες, εφαρμογές για την υλοποίηση ηλεκτρονικό εμπόριο και άλλες εφαρμογές.

Διαδικτυακές υπηρεσίες

πληροφοριακά συστήματαπολλές επιχειρήσεις υπάρχουν εδώ και δεκαετίες. Και δεδομένου ότι οι επιχειρήσεις ξεκίνησαν συχνά την ανάπτυξή τους με την αυθόρμητη αυτοματοποίηση ορισμένων τύπων δραστηριοτήτων, σήμερα πολλές από αυτές αντιμετωπίζουν το πρόβλημα της ενσωμάτωσης εφαρμογών που δημιουργήθηκαν με την πάροδο των ετών για να διαφορετικές πλατφόρμες. Ένα μέσο μιας τέτοιας ολοκλήρωσης είναι η τεχνολογία διαδικτυακών υπηρεσιών, η οποία χρησιμοποιεί ένα πρότυπο Πρωτόκολλο HTTP. Μπορείτε να δημιουργήσετε υπηρεσίες Ιστού με τη μορφή εκτελέσιμων αρχείων, βιβλιοθηκών και ερμηνευμένου κώδικα. υπάρχουν επίσης μέσα αναπαράστασης επιχειρηματικών αντικειμένων με βάση διάφορες τεχνολογίες, με τη μορφή διαδικτυακών υπηρεσιών (αυτή η τεχνολογία υποστηρίζεται σήμερα από όλους τους κορυφαίους κατασκευαστές προϊόντων γραφείου), εργαλείων ανάπτυξης, DBMS, διακομιστών εφαρμογών και λειτουργικών συστημάτων. Οι μέθοδοι υπηρεσιών Ιστού μπορούν να κληθούν από κανονικές εφαρμογές, εφαρμογές Ιστού και άλλες υπηρεσίες Ιστού. Πρόσφατα, υπήρξε μια μαζική εμφάνιση εφαρμογών που χρησιμοποιούν υπηρεσίες web, συμπεριλαμβανομένων εκείνων που προορίζονται για τελικούς χρήστες (τέτοιες εφαρμογές, για παράδειγμα, περιλαμβάνουν εφαρμογές από την οικογένειατο γραφείο της Microsoft Σύστημα, που επιτρέπει τη χρήση υπηρεσιών web για τη χρήση δεδομένων από λεξικά, εγκυκλοπαίδειες, διαδικτυακά συστήματα μετάφρασης, ηλεκτρονικές υπηρεσίες παραγγελιών αγαθών, δείτε, για παράδειγμα, το άρθρο «Διαδίκτυο καιεφαρμογές γραφείου

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

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


Ιστορία

Για να κατανοήσουμε καλύτερα τι είναι οι σύγχρονοι διακομιστές, ας δούμε συνοπτικά την ιστορία της προέλευσής τους. Αρχικά, όλη η ηλεκτρονική επεξεργασία δεδομένων γινόταν σε ισχυρούς υπολογιστές - οι χρήστες είχαν μόνο ένα τερματικό για πρόσβαση στα δεδομένα. Το τερματικό ήταν μια αλφαριθμητική οθόνη και πληκτρολόγιο που συνδέονταν με τον κεντρικό υπολογιστή. Το ίδιο το mainframe (από το αγγλικό mainframe - main rack) ήταν ένας ισχυρός, καθολικός υπολογιστής για μαζική ταυτόχρονη εξυπηρέτηση πολλών χιλιάδων χρηστών. Εκείνη την εποχή, μόνο λίγες εταιρείες προμήθευαν mainframes, αλλά, κατά κανόνα, τα προϊόντα τους ήταν ασύμβατα μεταξύ τους και, ως εκ τούτου, οι εταιρείες καταναλωτών ήταν κλειδωμένες στις λύσεις ενός προμηθευτή, ο οποίος προμήθευε όλο το υλικό και το λογισμικό. Τα συστήματα υπολογιστών ήταν πολύ ακριβά και η μετάβαση από το ένα σύστημα στο άλλο ήταν πολύ επώδυνη. Το 1971, η Intel ανέπτυξε τον πρώτο μικροεπεξεργαστή (i4004), ο οποίος κατέστησε δυνατή την εμφάνιση ενός προσωπικού υπολογιστή - του IBM PC. Με την αύξηση της ισχύος και του αριθμού των Η/Υ, υπήρξε μια σταδιακή μετάβαση από την κεντρική επεξεργασία πληροφοριών στη διανομή (σε προσωπικούς υπολογιστές). Τα τερματικά άρχισαν να αντικαθίστανται από υπολογιστές και τα mainframes σταδιακά εγκαταλείφθηκαν.

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

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

Αρχικά διαδεδομένο διακομιστές αρχείων, όπου οι χρήστες αποθήκευαν και μοιράζονταν τα δεδομένα τους. Με την ανάπτυξη του παγκόσμιου δικτύου υπολογιστών του Διαδικτύου, αναδύθηκε μια νέα κατεύθυνση - διακομιστές τηλεπικοινωνιών (διακομιστές Ιστού, ftp, ονόματα τομέα, email). Με την ανάπτυξη του DBMS, λόγω αλλαγών στη μορφή αποθήκευσης και πρόσβασης δεδομένων, οι διακομιστές αρχείων έχασαν τη δημοτικότητά τους και αντικαταστάθηκαν σε μεγάλο βαθμό από διακομιστές βάσεων δεδομένων. Οι διακομιστές αρχείων παραμένουν μέχρι σήμερα, αλλά έχουν αποκτήσει δευτερεύουσα σημασία - χρησιμοποιούνται για την αποθήκευση αρχείων χρηστών και διαφόρων αρχείων. Οι διακομιστές αρχείων αποθηκεύουν επίσης δεδομένα που προορίζονται για συνεργασία μεταξύ πολλών χρηστών. Πρόσφατα, η δημοτικότητα των τερματικών διακομιστών έχει αυξηθεί - οι υπολογιστές χρηστών χρησιμεύουν μόνο ως τερματικό για την εμφάνιση και την εισαγωγή δεδομένων και όλες οι εργασίες χρήστη εκτελούνται στον διακομιστή. Με αυτόν τον τρόπο επιτυγχάνεται σημαντική εξοικονόμηση στον Η/Υ (ακόμη και οι υπολογιστές χαμηλής κατανάλωσης είναι κατάλληλοι για τον ρόλο τερματικού), μειώνονται τα έξοδα εγκατάστασης και συντήρησης λογισμικού και επιλύονται ζητήματα εμπιστευτικότητας και ασφάλειας δεδομένων.

Για να μειωθεί το συνολικό κόστος ιδιοκτησίας (Total Cost of Ownership - TCO), το οποίο περιλαμβάνει το κόστος συντήρησης υλικού, λογισμικού και εξοπλισμού, πολλές εταιρείες σήμερα επιστρέφουν στην κεντρική επεξεργασία δεδομένων.


Ταξινόμηση λύσεων διακομιστή

Σήμερα, οι εταιρείες δεν είναι κλειδωμένες σε έναν προμηθευτή υλικού και λογισμικού, έχοντας την ευκαιρία να χρησιμοποιούν διάφορες λύσεις λογισμικού και υλικού από διαφορετικούς κατασκευαστές - πρώτα απ 'όλα, μιλάμε για τη διαφορά στις "παγκόσμιες" προσεγγίσεις (η επιλογή μεταξύ συστημάτων Windows - Unix και αρχιτεκτονικές CISC/RISC).

Σήμερα, οι κύριοι εκπρόσωποι της αρχιτεκτονικής CISC (Complete Instruction Set Computer) είναι επεξεργαστές x86 από την AMD και την Intel. Αυστηρά μιλώντας, οι αρχιτεκτονικές CISC/RISC είναι στην πραγματικότητα εξιδανικευμένες έννοιες, επομένως η ταξινόμηση των επεξεργαστών που βασίζεται σε αυτές είναι κάπως αυθαίρετη. Αλλά οι επεξεργαστές x86 ταξινομούνται ως επεξεργαστές CISC επειδή πληρούν τα πιο σημαντικά χαρακτηριστικά που χαρακτηρίζουν τα συστήματα CISC:

  • σχετικά μικρός αριθμός μητρώων γενικού σκοπού(16 καταχωρήσεις για κλασικές αρχιτεκτονικές CISC).
  • ένας μεγάλος αριθμός εντολών μηχανής (το σύνολο εντολών ενημερώνεται συνεχώς λόγω καινοτομιών από κατασκευαστές - MMX, SSE, 3DNow!, κ.λπ.).
  • ένας μεγάλος αριθμός μεθόδων διευθυνσιοδότησης.
  • ένας μεγάλος αριθμός υποστηριζόμενων μορφών εντολών διαφόρων μεγεθών bit.
  • την κυριαρχία της μορφής εντολής δύο διευθύνσεων.

Από σήμερα η AMD έχει δηλώσει μόνο την παρουσία της στην αγορά επεξεργαστές διακομιστή, στη συνέχεια θα μιλήσουμε περαιτέρω για την ανάπτυξη επεξεργαστών διακομιστή Intel.

Το 1995, η Intel αναπτύχθηκε Επεξεργαστής Pentium Pro (150 MHz, 512 KB cache), τοποθετημένος ως διακομιστής. Διέφερε από τους αντίστοιχους επιτραπέζιους υπολογιστές στη μεγάλη κρυφή μνήμη και την προηγμένη αρχιτεκτονική, εν μέρει δανεισμένη από επεξεργαστές με Αρχιτεκτονική RISC. Στον επεξεργαστή Pentium Pro, η Intel για πρώτη φορά συμπεριέλαβε τεχνολογία δυναμικής εκτέλεσης (Dynamic Execution), δηλαδή, οι εντολές μπορούν να εκτελεστούν όχι μόνο διαδοχικά, αλλά και παράλληλα χρησιμοποιώντας πρόβλεψη κλάδου κώδικα και αναδιάταξη εκτέλεσης εντολών. Αυτό αύξησε σημαντικά την απόδοση του επεξεργαστή - τον αριθμό των εντολών που εκτελούνται ανά κύκλο ρολογιού.

Η δεύτερη καινοτομία ήταν μια μεγάλη ενσωματωμένη μνήμη cache L2. Για συστήματα διακομιστών, η ύπαρξη μεγαλύτερης κρυφής μνήμης είναι πολύ σημαντική. Οι επεξεργαστές λειτουργούν πάντα σε συχνότητες αρκετές φορές υψηλότερες από τη συχνότητα της μνήμης. Οι μισές οδηγίες σε τυπικές εφαρμογές είναι εντολές για εργασία με μνήμη - φόρτωση και εκφόρτωση δεδομένων (Load-Store). Η μνήμη λειτουργεί σύμφωνα με το ακόλουθο σχήμα: εάν τα δεδομένα δεν βρέθηκαν στην κρυφή μνήμη L1, ακολουθεί πρόσβαση στην κρυφή μνήμη L2, αυτό διαρκεί 9-16 κύκλους επεξεργαστή, εάν δεν υπάρχουν δεδομένα στη μνήμη cache L2, τότε η πρόσβαση στην κρυφή μνήμη L2 Η μνήμη διαρκεί έως και 150 κύκλους κύκλων επεξεργαστή κατά τους οποίους ο επεξεργαστής περιμένει για δεδομένα. Μια μεγάλη κρυφή μνήμη L2 αυξάνει την πιθανότητα γρήγορης πρόσβασης στα δεδομένα και επομένως αυξάνει την απόδοση του επεξεργαστή.

Μπορούμε να πούμε ότι για πρώτη φορά η Intel χρησιμοποιεί και δοκιμάζει τις νέες προηγμένες τεχνολογίες της σε επεξεργαστές διακομιστών, στη συνέχεια αυτές οι τεχνολογίες εξαπλώνονται σταδιακά σε προσωπικούς υπολογιστές. Αυτό έχει ήδη συμβεί με την ενσωματωμένη κρυφή μνήμη L2, τη δυναμική εκτέλεση και την υπερ-νηματοποίηση. Ακολουθεί η διευθυνσιοδότηση μνήμης 64-bit (EM64T).

Το Pentium Pro ακολούθησαν άλλοι επεξεργαστές διακομιστών: το 1998 - Intel Pentium II Xeon (400-450 MHz, 1-2 MB cache), Pentium III Xeon (700-900 MHz, 1-2 MB cache). Το 2001 κυκλοφόρησε ένα ανάλογο διακομιστή του Pentium 4, το Xeon, το οποίο αναπτύσσεται και χρησιμοποιείται σήμερα.

Συμβαίνει ότι σήμερα η Intel αντιπροσωπεύει περίπου το 90% όλων των παραδόσεων στην αγορά διακομιστών, αλλά μόνο το ήμισυ των εσόδων από αυτήν την αγορά καταλήγει στις τσέπες της: το τμήμα βασικών διακομιστών, όπου η Intel κυριαρχεί από τα μέσα της δεκαετίας του '90, είναι μεγάλα, αλλά τα κέρδη από αυτό είναι Λόγω του χαμηλού κόστους των προϊόντων, είναι ασύγκριτα με το τμήμα των ισχυρών διακομιστών. Για παράδειγμα, σύμφωνα με τις πληροφορίες μου, σήμερα στη Δημοκρατία της Λευκορωσίας υπάρχουν εγκατεστημένοι αρκετές χιλιάδες διακομιστές εισόδου επιπέδου ενός και δύο επεξεργαστών και μόνο μερικοί διακομιστές RISC 48 επεξεργαστών - το συνολικό κόστος των συστημάτων είναι περίπου το ίδιο. Δεδομένου του ίδιου συνολικού κόστους, το κέρδος που λαμβάνουν οι κατασκευαστές από την πώληση αυτών των συστημάτων ποικίλλει σημαντικά. Το γεγονός είναι ότι η Intel επιτρέπει σε ορισμένους κατασκευαστές τρίτων να παράγουν διακομιστές με βάση τους επεξεργαστές της, αποκομίζοντας κέρδος όχι από ολόκληρο το κόστος του διακομιστή (5000-15000 USD), αλλά μόνο από το κόστος των εξαρτημάτων της - κυρίως επεξεργαστές (δηλαδή από 1000 -3000 USD).

Πρόσφατα, η Intel παλεύει ενεργά για αυτό το πιο κερδοφόρο τμήμα της αγοράς διακομιστών (συστήματα με αριθμό επεξεργαστών από 4 έως 256), όπου τα συστήματα που βασίζονται στην αρχιτεκτονική RISC έχουν εδραιωθεί αρκετά σταθερά. Η κύρια ελπίδα της Intel είναι οι 64-bit επεξεργαστές Intel Itanium 2 Επεξεργαστής IntelΤο Itanium παρέμεινε μη δημοφιλές - από τη στιγμή που άρχισε να στέλνει λειτουργικά συστήματα που βασίζονταν σε αυτό μέχρι την κυκλοφορία του Itanium 2, σύμφωνα με την Gartner, πωλήθηκαν μόνο περίπου 3 χιλιάδες διακομιστές που βασίζονταν σε αυτό (κατά την ίδια περίοδο, διακομιστές με επεξεργαστές RISC πωλήθηκαν 4,7 εκατομμύρια ) .

Η αρχιτεκτονική, που ονομάζεται υπολογιστής με μειωμένο σετ εντολών υπολογιστή (RISC), εμφανίστηκε λόγω του γεγονότος ότι στα μέσα της δεκαετίας του '70 του 20ου αιώνα, ορισμένοι προγραμματιστές αρχιτεκτονικών υπολογιστών παρατήρησαν ότι ακόμη και υπολογιστές με σύνθετη αρχιτεκτονική περνούν τον περισσότερο χρόνο τους εκτέλεση απλών εντολών Ο κανόνας 20/80 αποδείχθηκε δίκαιος, δηλαδή, το 20% των εντολών χρησιμοποιείται στο 80% των περιπτώσεων και το υπόλοιπο 80% των εντολών χρησιμοποιείται στο 20% των περιπτώσεων.

Τα κύρια χαρακτηριστικά της ιδέας της αρχιτεκτονικής RISC είναι:

  • ίσο μήκος εντολών.
  • ενιαία μορφή εντολών. Ή τουλάχιστον χρησιμοποιήστε όχι περισσότερες από δύο ή τρεις μορφές.
  • Οι τελεστές όλων των αριθμητικών και λογικών εντολών μπορούν να είναι μόνο καταχωρητές.
  • Οι εντολές εκτελούν μόνο απλές ενέργειες.
  • η εκτέλεση οποιασδήποτε εντολής δεν διαρκεί περισσότερο από έναν κύκλο ρολογιού.
  • μεγάλο αρχείο μητρώου?
  • απλή διευθυνσιοδότηση.

Οι επεξεργαστές SPARC (Scalable Processor Architecture) έχουν τα κύρια χαρακτηριστικά της αρχιτεκτονικής RISC. Μια κοινή παρανόηση μεταξύ των χομπίστων είναι να συσχετίζουν την αρχιτεκτονική SPARC μόνο με τη Sun. Στην πραγματικότητα, η αρχιτεκτονική SPARC είναι μια τυποποιημένη αρχιτεκτονική εντός της οποίας αρκετοί κατασκευαστές παράγουν επεξεργαστές και μεγάλα υπολογιστικά συστήματα που βασίζονται σε αυτούς. Ο πρώτος επεξεργαστής SPARC κατασκευάστηκε από τη Fujitsu με βάση μια συστοιχία πύλης που λειτουργούσε σε συχνότητα 16,67 MHz το 1987.

Οι κύριοι ανταγωνιστές σε αυτή την αγορά για πολύ καιρόΗ Sun Microsystems και η Fujitsu παρέμειναν. Αλλά όχι πολύ καιρό πριν, αυτές οι εταιρείες ανακοίνωσαν μια νέα κατεύθυνση συνεργασίας, η οποία θα έχει ως αποτέλεσμα την εμφάνιση μιας νέας σειράς συστημάτων APL (Advanced Product Line) στην πλατφόρμα SPARC/Solaris. Αυτή η σειρά θα εμφανιστεί το 2006 και θα συνδυάζει όλα τα πλεονεκτήματα των υπαρχουσών γραμμών Sun Fire και PrimePower. Στην ευρωπαϊκή αγορά, η γραμμή PrimePower προμηθεύεται από την εταιρεία Fujitsu SiemensΥπολογιστές.

Αυτά τα συστήματα σχεδιάστηκαν αρχικά ως εταιρικά υπολογιστικά συστήματα μεγάλης κλίμακας 64-bit. Όπως σημειώθηκε, τα συστήματα RISC κυριαρχούν στην κατηγορία διακομιστών υψηλής τεχνολογίας. Υπάρχουν διάφοροι λόγοι για αυτό, συγκεκριμένα, η αρχιτεκτονική SPARC επιτρέπει τη μέγιστη επεκτασιμότητα, επιπλέον, η διαθεσιμότητα εξειδικευμένου λογισμικού για συστήματα μεγάλης κλίμακας παίζει σημαντικό ρόλο. Οι διακομιστές PrimePower χρησιμοποιούν το λειτουργικό σύστημα Solaris, το οποίο έχει αναπτυχθεί ειδικά για αυτούς τους σκοπούς εδώ και αρκετό καιρό. Και στην αγορά λογισμικού για συστήματα CISC, η κατάσταση είναι θλιβερή: υπάρχει ελάχιστο πρωτότυπο λογισμικό για επεξεργαστές Itanium και ό,τι είναι διαθέσιμο δεν είναι ακόμα δοκιμασμένο και «ακατέργαστο», έτσι ώστε οι πελάτες ισχυρών διακομιστών να βασίζονται σε αυτό. Οι εργασίες για τις οποίες χρειάζονται τέτοια μηχανήματα (οικονομική μοντελοποίηση, κατασκευή μεγάλων ηλεκτρονικών εμπορικών συστημάτων κ.λπ.) απαιτούν ιδανική αξιοπιστία και δοκιμασμένα στο χρόνο. Τα συστήματα που βασίζονται σε SPARC έχουν ήδη περάσει αυτή τη δοκιμή.

Η επόμενη παράμετρος για την ταξινόμηση των διακομιστών είναι το λογισμικό που χρησιμοποιείται. Μπορεί κανείς να διαφωνήσει για μεγάλο χρονικό διάστημα και άκαρπα για το τι είναι καλύτερο - συστήματα που βασίζονται Βασισμένο στα Windowsή συστήματα *nix, αλλά η αγορά διακομιστών έχει αποφασίσει ανεξάρτητα αυτό το ζήτημα - οι διακομιστές εισόδου στη συντριπτική πλειονότητα των περιπτώσεων χρησιμοποιούν Windows 2000/2003 Server, ενώ οι διακομιστές εταιρικού επιπέδου χρησιμοποιούν συστήματα *nix (κυρίως Solaris).

Κατά τη γνώμη μου, αυτό οφείλεται πρωτίστως στο γεγονός ότι, εκτός από το άμεσο κόστος του εξοπλισμού, το συνολικό κόστος (TCO) των διακομιστών περιλαμβάνει και έξοδα διαχείρισης. Και υπό αυτό το πρίσμα, οι διαχειριστές των Windows «είναι» πολύ «φθηνότεροι» από τους συναδέλφους τους που διαχειρίζονται συστήματα *nix, γεγονός που οφείλεται στην επαρκή πολυπλοκότητα της διαχείρισης τέτοιων συστημάτων και στην προφανή έλλειψη κατάλληλων ειδικευμένων ειδικών. Επομένως, το μερίδιο τέτοιων δαπανών στο TCO των διακομιστών εισαγωγικού επιπέδου υπερβαίνει σημαντικά το ίδιο μερίδιο στο TCO των ισχυρών διακομιστών. Και οι ιδιοκτήτες ακριβών συστημάτων RISC είναι συχνά πρόθυμοι να πληρώσουν τα αντίστοιχα χρήματα στους ειδικούς τους, γνωρίζοντας ότι μια ώρα διακοπής λειτουργίας ενός τέτοιου διακομιστή θα τους κοστίσει ένα ποσό που υπερβαίνει τις δεκάδες ετήσιους μισθούς ενός διαχειριστή συστήματος.


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

Εάν έχετε ερωτήσεις ή σχόλια κατά την ανάγνωση αυτού του άρθρου, στείλτε τα στη διεύθυνση email μου.

Επιπλέον, στις 27 Σεπτεμβρίου θα πραγματοποιηθεί ένα σεμινάριο στο Μινσκ, το οποίο θα διεξαχθεί από την Fujitsu Siemens Computers και τον συνεργάτη της στη Λευκορωσία, IP ITC-M, αφιερωμένο στις σύγχρονες τεχνολογίες διακομιστών, συστήματα αποθήκευσης δεδομένων, εμπειρία στην υλοποίηση, λειτουργία και συντήρηση διακομιστών σε μεγάλα κέντρα ηλεκτρονικών υπολογιστών, κ.λπ. Κατά τη διάρκεια του σεμιναρίου, ειδικοί και διευθυντές υπηρεσιών IT/ICS που εργάζονται σε αυτόν τον τομέα θα μπορούν να επικοινωνούν με ειδικούς από τον μεγαλύτερο κατασκευαστή διακομιστών και εξοπλισμού υπολογιστών στην Ευρώπη και να λαμβάνουν ολοκληρωμένες πληροφορίες για όλα τα θέματα που τους ενδιαφέρουν. Ακολουθήστε την ανακοίνωση εγγραφής στην ιστοσελίδαwww.itc.by και στον Τύπο.