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

Άποψη: 32919|Απάντηση: 0

[Πηγή] [Αρχιτεκτονική]. net/c# υλοποιεί κατανεμημένη διαμόρφωση του χώρου αποθήκευσης κλειδιών/τιμών με βάση το Consul

[Αντιγραφή συνδέσμου]
Δημοσιεύτηκε στις 2020-10-16 18:18:06 | | | |
Σε κατανεμημένες εφαρμογές, είναι συχνά απαραίτητο να τροποποιηθούν οι ιδιότητες διαμόρφωσης, όπως η ενημέρωση συμβολοσειρών σύνδεσης βάσης δεδομένων και η ενημέρωση διευθύνσεων προσωρινής μνήμης. Εάν δεν υπάρχουν πολλές εφαρμογές, μπορείτε να το τροποποιήσετε με μη αυτόματο τρόπο, όταν υπάρχουν πολλές εφαρμογές, η κατανεμημένη διαμόρφωση είναι πολύ σημαντική, αυτό το άρθρο εξηγεί την αρχιτεκτονική αποθήκευσης κλειδιού/τιμής του .net/c# που βασίζεται στο Consul για την υλοποίηση κατανεμημένης διαμόρφωσης.

Εγκαταστήστε το Consul

Σύντομη εισαγωγή

Το Consul είναι ένα εργαλείο ανακάλυψης και εγγραφής υπηρεσιών που είναι κατανεμημένο και εξαιρετικά επεκτάσιμο.

Το Consul περιλαμβάνει κυρίως τα ακόλουθα χαρακτηριστικά:

  • Εντοπισμός υπηρεσίας: Υποστήριξη για εγγραφή και εντοπισμό υπηρεσίας για πρωτόκολλα HTTP και DNS.
  • Έλεγχοι παρακολούθησης: Υποστηρίζει πολλαπλούς ελέγχους υγείας.
  • Αποθήκευση κλειδιού/τιμής: Υποστηρίζει κατανεμημένη αποθήκευση δεδομένων KV μέσω HTTP API.
  • Υποστήριξη πολλαπλών κέντρων δεδομένων: Υποστηρίζεται οποιοσδήποτε αριθμός κέντρων δεδομένων.


Εγκατάσταση

Λήψη Διεύθυνσης:

Η σύνδεση με υπερσύνδεσμο είναι ορατή.

Αυτό το άρθρο χρησιμοποιεί τα Windows 10 x64 ως περιβάλλον δοκιμής.

Μετά τη λήψη και την αποσυμπίεση, εκτελέστε το χρησιμοποιώντας την εντολή cmd, ο κωδικός είναι ο εξής:



dev σημαίνει εκτέλεση σε λειτουργία ανάπτυξης και η παράμετρος -client μπορεί να χρησιμοποιηθεί για να καθορίσει σε ποια IP επιτρέπεται να έχει πρόσβαση ο πελάτης, για παράδειγμα, -client 127.0.0.1 σημαίνει ότι μπορεί να χρησιμοποιηθεί και σε λειτουργία ανάπτυξης, τα δεδομένα δεν θα διατηρηθούν.

(Λειτουργία προγραμματιστή, η λειτουργία συμπλέγματος συνιστάται για περιβάλλοντα παραγωγής)



Πρόσβαση:http://127.0.0.1:8500/ui/dc1/servicesΔες παρακάτω:



Διεπαφή KV

Διεύθυνση τεκμηρίωσης API:

Η σύνδεση με υπερσύνδεσμο είναι ορατή.

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

Λάβετε την τιμή μέσω της διαδρομής αιτήματος GET /v1/kv/:key.

http://127.0.0.1:8500/v1/kv/test



[
    {
        "LockIndex": 0,
        "Κλειδί": "δοκιμή",
        "Σημαίες": 0,
        "Τιμή": "aXRzdnNlLmNvbQ==",
        "CreateIndex": 194,
        "ΤροποποίησηΕυρετηρίου": 194
    }
]


  • Το CreateIndex είναι μια εσωτερική τιμή ευρετηρίου που αντιπροσωπεύει πότε δημιουργήθηκε η καταχώριση.
  • Το ModifyIndex είναι το τελευταίο ευρετήριο που τροποποιεί αυτό το κλειδί. Αυτός ο δείκτης αντιστοιχεί στην τιμή κεφαλίδας που επιστρέφεται από το X-Consul-Index στην απόκριση και μπορεί να οριστεί από ? Η παράμετρος ερωτήματος ευρετηρίου χρησιμοποιείται για τη δημιουργία ερωτημάτων αποκλεισμού. Μπορείτε ακόμη και να εκτελέσετε ερωτήματα αποκλεισμού σε ολόκληρο το υποδέντρο του καταστήματος KV: τι θα γινόταν αν; Το recurse παρέχει ένα ερώτημα και η επιστρεφόμενη τιμή X-Consul-Index αντιστοιχεί στην πιο πρόσφατη τιμή του ModifyIndex στο πρόθεμα, χρησιμοποιώντας το ερώτημα αποκλεισμού ?index θα περιμένει μέχρι να ενημερωθεί οποιοδήποτε κλειδί σε αυτό το πρόθεμα.
  • Το LockIndex είναι ο αριθμός των φορών που αποκτήθηκε με επιτυχία το κλειδί στην κλειδαριά. Εάν το κλείδωμα κρατηθεί, το πλήκτρο Session θα παρέχει την περίοδο λειτουργίας στην οποία ανήκει το κλείδωμα.
  • Το κλειδί είναι απλώς η πλήρης διαδρομή της εισόδου.
  • Οι σημαίες είναι αδιαφανείς ανυπόγραφοι ακέραιοι αριθμοί που μπορούν να επισυναφθούν σε κάθε καταχώρηση. Οι πελάτες μπορούν να επιλέξουν να χρησιμοποιήσουν αυτήν την επιλογή, αλλά είναι λογικό για την εφαρμογή τους.
  • Η τιμή είναι μια κωδικοποιημένη σταγόνα δεδομένων base64.


.NET/C# Key/Value ανάγνωση και εγγραφή

Αρχικά, δημιουργήστε ένα έργο .NET 4.6.1 και χρησιμοποιήστε το nuget για να εγκαταστήσετε τα απαραίτητα πακέτα, ως εξής:



Ο κωδικός έχει ως εξής:



Οι αποδόσεις είναι οι εξής:



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


(Τέλος)




Προηγούμενος:Εντοπισμός σφαλμάτων προγραμμάτων .NET με Σημειωματάριο στο σπίτι σε υπολογιστή για δέκα χρόνια
Επόμενος:Αρχιτεκτονική: Το ASP.NET Core διαμορφώνει δυναμικά τις καυτές ενημερώσεις με βάση το Consul
Αποκήρυξη:
Όλο το λογισμικό, το υλικό προγραμματισμού ή τα άρθρα που δημοσιεύονται από το Code Farmer Network προορίζονται μόνο για μαθησιακούς και ερευνητικούς σκοπούς. Το παραπάνω περιεχόμενο δεν θα χρησιμοποιηθεί για εμπορικούς ή παράνομους σκοπούς, άλλως οι χρήστες θα υποστούν όλες τις συνέπειες. Οι πληροφορίες σε αυτόν τον ιστότοπο προέρχονται από το Διαδίκτυο και οι διαφορές πνευματικών δικαιωμάτων δεν έχουν καμία σχέση με αυτόν τον ιστότοπο. Πρέπει να διαγράψετε εντελώς το παραπάνω περιεχόμενο από τον υπολογιστή σας εντός 24 ωρών από τη λήψη. Εάν σας αρέσει το πρόγραμμα, υποστηρίξτε γνήσιο λογισμικό, αγοράστε εγγραφή και λάβετε καλύτερες γνήσιες υπηρεσίες. Εάν υπάρχει οποιαδήποτε παραβίαση, επικοινωνήστε μαζί μας μέσω email.

Mail To:help@itsvse.com