/ / / Πελάτης / διακομιστής με βάση την υποδοχή Delphi

Εξυπηρετητή πελάτη Delphi Socket Based

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

Διακομιστής με βάση την υποδοχή

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

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

Το σχήμα της αρχιτεκτονικής "Client - server"

Ας εξετάσουμε λεπτομερέστερα το διάγραμμα εφαρμογής αρχιτεκτονικής, αναλύοντας διαδοχικά τους συχνά χρησιμοποιούμενους ορισμούς:

1. Properties ServerType και Port.Προκειμένου ο χρήστης να μπορεί να συνδεθεί στον διακομιστή, είναι σημαντικό να διασφαλιστεί ότι η θύρα που χρησιμοποιείται τόσο από τον διακομιστή όσο και από τον πελάτη είναι η ίδια. Είναι ο σκοπός αυτής της παραμέτρου που γίνεται στην ιδιότητα Port. Ο τύπος σύνδεσης καθορίζεται από την παράμετρο διακομιστή

2. Η διαδικασία ανοίγματος μιας πρίζας. Για να ξεκινήσετε μια συνεδρία πελάτη / διακομιστή, είναι σημαντικό να ανοίξετε μια υποδοχή και μια θύρα. Χρησιμοποιείται η ιδιότητα Listen.

3.Επιπλέον, τα δεδομένα ανταλλάσσονται με τον χρήστη. Κατά το κλείσιμο, ο πελάτης αποσυνδέεται. Με την κατάλληλη εντολή από το διαχειριστή του συστήματος, ο διακομιστής τερματίζει τη λειτουργία του, διακόπτοντας όλες τις καθιερωμένες συνδέσεις και διακόπτοντας τη διαδικασία αναμονής για νέες συνδέσεις.

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

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

- ο αριθμός των συνδεδεμένων χρηστών ·

- τον αριθμό των ενεργών διεργασιών ·

- τον αριθμό των δωρεάν διαδικασιών ·

- θύρα, όνομα κεντρικού υπολογιστή και τοπική διεύθυνση IP ·

- ξεμπλοκάρισμα και μπλοκάρισμα μιας πρίζας.

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

Τεκμηρίωση

Μέχρι σήμερα, βιβλιογραφία για την ανάπτυξηΥπάρχουν πολύ λίγες εφαρμογές Delphi client / server που σχετίζονται με την ανάπτυξη και τη χρήση του socket. Επομένως, για μια λεπτομερή μελέτη αυτής της πτυχής, μπορείτε να ανατρέξετε στην τεκμηρίωση για συστήματα Linux και Unix, από τότε Αναλύει λεπτομερώς την τεχνολογία ανάπτυξης εφαρμογών χρησιμοποιώντας πρίζες, ωστόσο, κατά κανόνα, στο Perl ή στο C ++.