Μετάβαση στο περιεχόμενο

gRPC

Δεξί κλικ στο δέντρο ▸ Προσθήκη ▸ Αίτημα gRPC.

Μια καρτέλα gRPC: η διεύθυνση του διακομιστή, ο τύπος κλήσης «Μοναδιαία», η επιλυμένη διαδρομή υπηρεσίας/μεθόδου, το μήνυμα αιτήματος σε JSON και τα μεταδεδομένα

ΠεδίοΡόλος
URLhost:port του διακομιστή
Υπηρεσία / ΜέθοδοςΗ υπηρεσία και η RPC που καλείται
Τύπος κλήσηςunary, server-stream, client-stream, bidirectional-stream
Μήνυμα αιτήματοςΤο μήνυμα, σε JSON
ΜεταδεδομέναΤα ζεύγη κλειδιού / τιμής που μεταδίδονται με την κλήση (εκεί περνούν τα διαπιστευτήρια)

Από πού προέρχεται ο ορισμός της υπηρεσίας

Section titled “Από πού προέρχεται ο ορισμός της υπηρεσίας”

Τρεις πιθανές πηγές, κατά σειρά προτεραιότητας:

  1. ένα σύνολο περιγραφέων που αποκτήθηκε με αντανάκλαση διακομιστή — αυτό θέτει η εισαγωγή με αντανάκλαση, και υπερισχύει των υπολοίπων·
  2. το ενσωματωμένο περιεχόμενο .proto, αποθηκευμένο στο έργο·
  3. μια διαδρομή προς ένα .proto στον δίσκο.

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

Εισαγωγή με αντανάκλαση

Section titled “Εισαγωγή με αντανάκλαση”

Από το παράθυρο διαλόγου εισαγωγής gRPC, δηλώστε host:port: το Restorm ρωτά την υπηρεσία αντανάκλασης, φορτώνει τους περιγραφείς και κατασκευάζει το δέντρο — έναν φάκελο ανά υπηρεσία, ένα αίτημα ανά RPC, με ένα δείγμα μηνύματος.

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

Αν ο διακομιστής δεν υλοποιεί την αντανάκλαση, το Restorm το λέει ρητά: εισαγάγετε τότε το .proto. Δείτε Εισαγωγή ενός .proto gRPC.

Τρεις μεταφορές είναι διαθέσιμες:

ΜεταφοράΠότε να τη χρησιμοποιήσετε
grpc (προεπιλογή)Εγγενές gRPC πάνω από HTTP/2
grpc-webΔιακομιστής πίσω από proxy gRPC-Web
connectΔιακομιστής Connect-RPC

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

Το Restorm ξέρει να φιλοξενεί έναν διακομιστή gRPC προσομοίωσης: μια λίστα προσομοιωμένων μεθόδων, καθεμία με το μήνυμα απόκρισής της (έναν πίνακα JSON για μια ροή), τον κωδικό κατάστασής της, τα τελικά μεταδεδομένα της, ή ένα σενάριο κώδικα. Η αντανάκλαση διακομιστή εκτίθεται εξ ορισμού, και το TLS ρυθμίζεται με πιστοποιητικό και κλειδί σε μορφή PEM. Δείτε Προσομοίωση μιας υπηρεσίας gRPC.

Δεκατέσσερις στόχοι: grpcurl, grpc_cli, grpcurl σε gRPC-Web, curl σε Connect-RPC, JavaScript και TypeScript (@grpc/grpc-js), Python (grpcio), Go, Java (grpc-java), C# (Grpc.Net.Client), Ruby, Rust (tonic), Kotlin (grpc-kotlin), Swift (grpc-swift).