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

Άποψη: 55716|Απάντηση: 3

[Πηγή] 【Αρχιτεκτονική】ASP.NET Το Core είναι εξαιρετικά διαθέσιμο με βάση τις υπηρεσίες Consul

[Αντιγραφή συνδέσμου]
Δημοσιεύτηκε στις 2020-10-16 18:33:07 | | | |
Κατά την ανάπτυξη έργων Διαδικτύου, είναι απαραίτητη η αλληλεπίδραση με διάφορες υπηρεσίες και οι χρήστες λαμβάνουν δεδομένα από τον διακομιστή και η υψηλή διαθεσιμότητα διεπαφών υπηρεσιών είναι ιδιαίτερα σημαντική, ειδικά στο ηλεκτρονικό εμπόριο και τα συστήματα πληρωμών, όπου η υψηλή διαθεσιμότητα μετρά επίσης εάν το σύστημα είναι ισχυρό. Στην περίπτωση των clusters, πολλές υπηρεσίες είναι επίσης δύσκολο να διατηρηθούν.

Επιθεώρηση Προξένου

Το Consul είναι ένα εργαλείο ανοιχτού κώδικα που αναπτύχθηκε στη γλώσσα Go που κυκλοφόρησε από τη HashiCorp, το οποίο χρησιμοποιείται για την πραγματοποίηση ανακάλυψης υπηρεσιών και διαμόρφωσης κατανεμημένων συστημάτων, με ενσωματωμένο πλαίσιο εγγραφής και ανακάλυψης υπηρεσιών, εφαρμογή πρωτοκόλλου συνέπειας διανομής, έλεγχο υγείας, αποθήκευση κλειδιών/τιμών και λύσεις πολλαπλών κέντρων δεδομένων, το οποίο είναι σχετικά απλό στη χρήση.

[Αρχιτεκτονική]. net/c# υλοποιεί κατανεμημένη διαμόρφωση του χώρου αποθήκευσης κλειδιών/τιμών με βάση το Consul
https://www.itsvse.com/thread-9420-1-1.html

Αρχιτεκτονική: Το ASP.NET Core διαμορφώνει δυναμικά τις καυτές ενημερώσεις με βάση το Consul
https://www.itsvse.com/thread-9421-1-1.html


Ανακάλυψη υπηρεσίας προξένου

Πώς να χρησιμοποιήσετε το Consul Service Discovery:

  • Εκτελέστε έναν πράκτορα Consul σε λειτουργία πελάτη σε κάθε υπολογιστή, ο οποίος είναι υπεύθυνος μόνο για την αποτελεσματική ανταλλαγή των πιο πρόσφατων πληροφοριών εγγραφής με το σύμπλεγμα Consul (που δεν συμμετέχει στην εκλογή αρχηγού).
  • Η υπηρεσία υπηρεσίας σε κάθε υπολογιστή καταχωρεί το όνομα της υπηρεσίας και τη διεύθυνση URL της υπηρεσίας στον τοπικό προξενικό πράκτορα
  • Όταν ένα πρόγραμμα που έχει αναπτυχθεί στον υπολογιστή1 χρειάζεται να καλέσει την υπηρεσία ServiceB, το πρόγραμμα ServiceA λαμβάνει απευθείας τη διεύθυνση πρόσβασης της υπηρεσίας Service B από τον τοπικό παράγοντα Consul μέσω του ονόματος της υπηρεσίας και, στη συνέχεια, υποβάλλει απευθείας μια αίτηση στη διεύθυνση URL της υπηρεσίας ServiceB.




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



Στην τάξη Startup, καλέστε ως εξής:



Έλεγχος υγείας

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



Ξεκινήστε το έργο, εγγραφείτε στην υπηρεσία

Ο ελεγκτής μπορεί να ορίσει μια μέθοδο δοκιμής ως εξής:



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





Δείτε τον σύνδεσμο μέσω του προγράμματος περιήγησής σας:

http://127.0.0.1:8500/ui/dc1/services/test.itsvse



http://127.0.0.1:8500/v1/catalog/service/test.itsvse

Τα δεδομένα json είναι τα εξής:

[
    {
        "ID": "bb644359-6b2a-a27e-7a0a-a1950b8e515f",
        "Κόμβος": "DESKTOP-EB7B69D",
        "Διεύθυνση": "127.0.0.1",
        "Κέντρο δεδομένων": "dc1",
        "TaggedAddresses": {
            "lan": "127.0.0.1",
            "wan": "127.0.0.1"
        },
        "NodeMeta": {
            "προξενικό-δίκτυο-τμήμα": ""
        },
        "ServiceKind": "",
        "ServiceID": "507338bf-a5a6-4013-9675-c43a40a2c1a0",
        "ServiceName": "test.itsvse",
        "ServiceTags": [
            "δοκιμή",
            "Itsvse"
        ],
        "ServiceAddress": "127.0.0.1",
        "Βάρηεξυπηρέτησης": {
            "Πέρασμα": 1,
            "Προειδοποίηση": 1
        },
        "ServiceMeta": {},
        «Θύρα εξυπηρέτησης»: 8083,
        "ServiceEnableTagOverride": false,
        "ServiceProxy": {
            "MeshGateway": {},
            "Έκθεση": {}
        },
        "ServiceConnect": {},
        "ΔημιουργίαΕυρετήριο": 1317,
        "ΤροποποίησηΕυρετηρίου": 1317
    },
    {
        "ID": "bb644359-6b2a-a27e-7a0a-a1950b8e515f",
        "Κόμβος": "DESKTOP-EB7B69D",
        "Διεύθυνση": "127.0.0.1",
        "Κέντρο δεδομένων": "dc1",
        "TaggedAddresses": {
            "lan": "127.0.0.1",
            "wan": "127.0.0.1"
        },
        "NodeMeta": {
            "προξενικό-δίκτυο-τμήμα": ""
        },
        "ServiceKind": "",
        «ServiceID»: «bb21f150-7219-4eda-bc91-54686a750228»,
        "ServiceName": "test.itsvse",
        "ServiceTags": [
            "δοκιμή",
            "Itsvse"
        ],
        "ServiceAddress": "127.0.0.1",
        "Βάρηεξυπηρέτησης": {
            "Πέρασμα": 1,
            "Προειδοποίηση": 1
        },
        "ServiceMeta": {},
        «Θύρα εξυπηρέτησης»: 8082,
        "ServiceEnableTagOverride": false,
        "ServiceProxy": {
            "MeshGateway": {},
            "Έκθεση": {}
        },
        "ServiceConnect": {},
        "ΔημιουργίαΕυρετήριο": 1314,
        "Τροποποίηση ευρετηρίου": 1314
    }
]


Κλήση υπηρεσίας προξένου

Δημιουργήστε ένα νέο έργο κονσόλας .NET Core με τον ακόλουθο κώδικα:



Καλώ τυχαία την εγγεγραμμένη υπηρεσία test.itsvse και το αποτέλεσμα είναι το εξής:



Τέλος, λήψη πηγαίου κώδικα:

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




Προηγούμενος:Αρχιτεκτονική: Το ASP.NET Core διαμορφώνει δυναμικά τις καυτές ενημερώσεις με βάση το Consul
Επόμενος:Η εισαγωγή αρχείων DMP είναι εξαιρετική
Δημοσιεύτηκε στις 2020-11-30 19:57:38 |
w174w174w174
Δημοσιεύτηκε στις 2021-7-23 09:31:37 |
Ευχαριστώ που το μοιράστηκες
Δημοσιεύτηκε στις 2021-9-3 09:05:16 |
λογισμικό, εισάγετε δεκάδες χιλιάδες email, μην προσποιείστε τον θάνατο, μην παγώνετε!!
Αποκήρυξη:
Όλο το λογισμικό, το υλικό προγραμματισμού ή τα άρθρα που δημοσιεύονται από το Code Farmer Network προορίζονται μόνο για μαθησιακούς και ερευνητικούς σκοπούς. Το παραπάνω περιεχόμενο δεν θα χρησιμοποιηθεί για εμπορικούς ή παράνομους σκοπούς, άλλως οι χρήστες θα υποστούν όλες τις συνέπειες. Οι πληροφορίες σε αυτόν τον ιστότοπο προέρχονται από το Διαδίκτυο και οι διαφορές πνευματικών δικαιωμάτων δεν έχουν καμία σχέση με αυτόν τον ιστότοπο. Πρέπει να διαγράψετε εντελώς το παραπάνω περιεχόμενο από τον υπολογιστή σας εντός 24 ωρών από τη λήψη. Εάν σας αρέσει το πρόγραμμα, υποστηρίξτε γνήσιο λογισμικό, αγοράστε εγγραφή και λάβετε καλύτερες γνήσιες υπηρεσίες. Εάν υπάρχει οποιαδήποτε παραβίαση, επικοινωνήστε μαζί μας μέσω email.

Mail To:help@itsvse.com