Τεχνολογίες πελάτη-διακομιστή. Επισκόπηση των σύγχρονων τεχνολογιών διακομιστών

Αυτο 15.06.2019
Επισκόπηση προγράμματος Η έκδοση υπολογιστή του Microsoft Excel Viewer θα επιτρέψει...

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

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

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

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

Επεξεργασία ενός αιτήματος χρήστη:

· Πρόσβαση στη βάση δεδομένων (ερώτημα)

· Μεταφορά δεδομένων ενώ εμποδίζεται η πρόσβαση άλλων χρηστών

· Επεξεργασία δεδομένων στον υπολογιστή του χρήστη

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

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

Ελαττώματα διακομιστή αρχείωντα συστήματα είναι προφανή:

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

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

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

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

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

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

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

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

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

Έτσι, όλα τα παραπάνω μειονεκτήματα διακομιστή αρχείωνΤα κυκλώματα εξαλείφονται στην αρχιτεκτονική πελάτη-διακομιστή:

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

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

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), ελέγχεται ότι δεν θα παραβιάζονται οι περιορισμοί ακεραιότητας που ορίζονται σε αυτό το σημείο (αυτοί που επαληθεύονται αμέσως), μετά την οποία εκτελείται η αντίστοιχη ενέργεια (συνοδευόμενη από τροποποίηση όλων σχετικά ευρετήρια και αλλαγές καταγραφής). Στη συνέχεια, ο διακομιστής ελέγχει εάν αυτή η αλλαγή επηρεάζει την κατάσταση ενεργοποίησης οποιουδήποτε κανόνα ετικέτας και εάν εντοπιστεί ένας τέτοιος κανόνας, εκτελεί τη διαδικασία για τη δράση του. Αυτή η διαδικασία μπορεί να περιλαμβάνει πρόσθετες δηλώσεις τροποποίησης βάσης δεδομένων που μπορεί να προκαλέσουν την ενεργοποίηση άλλων κανόνων, κ.λπ. Οι ενέργειες που εκτελούνται στο διακομιστή βάσης δεδομένων κατά τον έλεγχο των περιορισμών ακεραιότητας ικανοποιούνται και όταν οι ενεργοποιήσεις ενεργοποιούνται μπορούν να θεωρηθούν ότι είναι οι ενέργειες του backend της εφαρμογής . Κατά την εκτέλεση τελεστών τροποποίησης σχήματος βάσης δεδομένων (προσθήκη ή αφαίρεση στηλών από υπάρχοντες πίνακες, αλλαγή του τύπου δεδομένων μιας υπάρχουσας στήλης υπάρχον πίνακακ.λπ.) οι ενεργοποιητές μπορούν επίσης να ενεργοποιηθούν, δηλαδή, με άλλα λόγια, μπορεί να εκτελεστεί η πλευρά διακομιστή της εφαρμογής. Ομοίως, οι ενεργοποιητές μπορούν να ενεργοποιηθούν όταν καταστρέφονται αντικείμενα σχήματος βάσης δεδομένων (τομείς, πίνακες, περιορισμοί ακεραιότητας, κ.λπ.). Μια ειδική κατηγορία εντολών SQL είναι αυτές που καλούν προκαθορισμένες αποθηκευμένες διαδικασίες που είναι αποθηκευμένες στη βάση δεδομένων. Εάν μια αποθηκευμένη διαδικασία ορίζεται χρησιμοποιώντας μια αρκετά προηγμένη γλώσσα που περιλαμβάνει μη διαδικαστικές Δηλώσεις SQL, και καθαρά διαδικαστικές κατασκευές (για παράδειγμα, η γλώσσα PL/SQL από την Oracle), τότε ένα σοβαρό μέρος της εφαρμογής μπορεί να τοποθετηθεί σε μια τέτοια διαδικασία, η οποία, όταν εκτελεστεί η δήλωση κλήσης διαδικασίας, θα εκτελεστεί από την πλευρά του διακομιστή , και όχι από την πλευρά του πελάτη. Κατά την εκτέλεση της δήλωσης ολοκλήρωσης συναλλαγής, ο διακομιστής πρέπει να ελέγχει τη συμμόρφωση με όλους τους λεγόμενους περιορισμούς αναβαλλόμενης ακεραιότητας (τέτοιοι περιορισμοί περιλαμβάνουν περιορισμούς που επιβάλλονται στα περιεχόμενα ολόκληρου του πίνακα της βάσης δεδομένων ή σε πολλούς πίνακες ταυτόχρονα· για παράδειγμα, ο συνολικός μισθός του Οι υπάλληλοι του τμήματος 999 δεν πρέπει να υπερβαίνουν τα 150 εκατομμύρια ρούβλια.). Και πάλι, ο έλεγχος των αναβαλλόμενων περιορισμών ακεραιότητας μπορεί να αντιμετωπιστεί ως εκτέλεση της εφαρμογής από την πλευρά του διακομιστή.

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Δίκτυο IT

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

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

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

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

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

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

ο 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.

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

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

Διακομιστές Ιστού

Αρχικά παρείχε πρόσβαση σε έγγραφα υπερκειμένουΜε Πρωτόκολλο HTTP(Hupper Text Transfer Protocol). Τώρα υποστηρίζουν προηγμένες δυνατότητες, ιδίως την εργασία με δυαδικά αρχεία (εικόνες, πολυμέσα, κ.λπ.).

Διακομιστές εφαρμογών

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

Διακομιστές βάσεων δεδομένων

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

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

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

Διακομιστής μεσολάβησης

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

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

Τείχη προστασίας(τείχη προστασίας)

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

Διακομιστές αλληλογραφίας

Παροχή υπηρεσιών αποστολής και λήψης μηνυμάτων ηλεκτρονικού ταχυδρομείου.

Διακομιστές απομακρυσμένης πρόσβασης (RAS)

Αυτά τα συστήματα παρέχουν επικοινωνία με το δίκτυο μέσω γραμμών dial-up. Ένας απομακρυσμένος υπάλληλος μπορεί να χρησιμοποιήσει τους πόρους ενός εταιρικού LAN συνδέοντας σε αυτό χρησιμοποιώντας ένα κανονικό μόντεμ.

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

Για την πρόσβαση σε ορισμένες υπηρεσίες δικτύου, χρησιμοποιούνται πελάτες των οποίων οι δυνατότητες χαρακτηρίζονται από την έννοια του «πάχους». Καθορίζει τη διαμόρφωση υλικού και το λογισμικό που είναι διαθέσιμα στον πελάτη. Ας θεωρήσουμε πιθανή οριακές τιμές:

Thin client

Αυτός ο όρος ορίζει έναν πελάτη του οποίου οι υπολογιστικοί πόροι επαρκούν μόνο για την εκτέλεση της απαιτούμενης εφαρμογής δικτύου μέσω μιας διεπαφής Ιστού. Η διεπαφή χρήστη μιας τέτοιας εφαρμογής διαμορφώνεται με μέσα στατικός HTML (δεν παρέχεται εκτέλεση JavaScript), όλη η λογική της εφαρμογής εκτελείται στον διακομιστή.
Για να λειτουργήσει ο thin client, αρκεί απλώς να παρέχετε τη δυνατότητα εκκίνησης ενός προγράμματος περιήγησης ιστού, στο παράθυρο του οποίου εκτελούνται όλες οι ενέργειες. Για το λόγο αυτό, ένα πρόγραμμα περιήγησης ιστού ονομάζεται συχνά "καθολικός πελάτης".

«Χοντρός» πελάτης

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

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

Η λογική εφαρμογής του «πλούσιου» πελάτη υλοποιείται επίσης στον διακομιστή. Τα δεδομένα αποστέλλονται σε τυπική μορφήανταλλαγή, με βάση την ίδια XML ( Πρωτόκολλα SOAP, XML-RPC) και ερμηνεύονται από τον πελάτη.

Μερικά βασικά πρωτόκολλα εμπλουτισμένων πελατών που βασίζονται σε XML δίνονται παρακάτω:

  • XAML (EXtensible Application Γλώσσα σήμανσης) - αναπτύχθηκε από τη Microsoft, χρησιμοποιείται σε εφαρμογές στην πλατφόρμα .NET.
  • Το XUL (XML User Interface Language) είναι ένα πρότυπο που αναπτύχθηκε από το έργο Mozilla, το οποίο χρησιμοποιείται, για παράδειγμα, στο πελάτη αλληλογραφίας Mozilla Thunderbird ή πρόγραμμα περιήγησης Mozilla Firefox;
  • Καλώδιο- τεχνολογία πολυμέσωνΒασισμένο σε XML, που αναπτύχθηκε από τη Macromedia/Adobe.

Σύναψη

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

Τμήμα Γενικής και Επαγγελματικής Εκπαίδευσης της Περιφέρειας Bryansk

Κρατικό εκπαιδευτικό ίδρυμα

Klintsovsky Textile College

ΛΟΓΙΣΜΙΚΟ ΓΙΑ ΑΥΤΟΜΑΤΑ ΠΛΗΡΟΦΟΡΙΚΑ ΣΥΣΤΗΜΑΤΑ

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

Φοιτητικό γρ. A-90________________________________ (Petrochenko A.O.)

Δάσκαλος ______________________ (Shirokova A.L.)

Klintsy – 2011

1. Διακομιστές. Βασικά στοιχεία διακομιστή

2. Μοντέλο πελάτη-διακομιστή

3. Ταξινόμηση τυπικών διακομιστών

4. Σύναψη

1. Διακομιστές. Βασικά στοιχεία διακομιστή

Διακομιστής (από τον αγγλικό διακομιστή, σερβίρισμα). Ανάλογα με τον σκοπό, υπάρχουν αρκετοί ορισμοί του διακομιστή έννοιας.

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

2. Διακομιστής (λογισμικό) - λογισμικό που λαμβάνει αιτήματα από πελάτες (στην αρχιτεκτονική πελάτη-διακομιστή).

3. Διακομιστής ( μηχανήματα υπολογιστών) - υπολογιστής (ή ειδικός εξοπλισμός υπολογιστών) αποκλειστικό ή/και εξειδικευμένο για την εκτέλεση ορισμένων λειτουργιών υπηρεσίας.

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

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

2. Μοντέλο πελάτη-διακομιστή

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

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

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

Σε ένα σύστημα διακομιστή αρχείων, τα δεδομένα αποθηκεύονται σε έναν διακομιστή αρχείων (για παράδειγμα, Novell NetWare ή Windows NT Server) και η επεξεργασία τους πραγματοποιείται σε σταθμούς εργασίας, οι οποίοι, κατά κανόνα, λειτουργούν ένα από τα λεγόμενα "desktop DBMS". ” - Access, FoxPro, Paradox, κ.λπ..

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

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


Ρύζι. Σύγκριση μοντέλων file-server και client-server

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

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

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

Τι παρέχει η αρχιτεκτονική πελάτη-διακομιστή;

Ας δούμε αυτή την αρχιτεκτονική από την άποψη των επιχειρηματικών αναγκών. Ποιες ιδιότητες προσφέρει ένας πελάτης-διακομιστής σε ένα πληροφοριακό σύστημα;

Αξιοπιστία

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

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

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

Επεκτασιμότητα

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

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

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

Ασφάλεια

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

Ευκαμψία

Σε μια εφαρμογή δεδομένων, υπάρχουν τρία λογικά επίπεδα:

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

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

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

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

Ρύζι. Μοντέλο εφαρμογής πελάτη-διακομιστή τριών επιπέδων

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

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

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

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



Συνιστούμε να διαβάσετε

Κορυφή