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

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

[Πηγή] Το .NET Core καλεί λύσεις σφαλμάτων διεύθυνσης gRPC HTTP (χωρίς προστασία TLS)

[Αντιγραφή συνδέσμου]
Δημοσιεύτηκε στις 2021-3-22 16:45:16 | | | |
Το gRPC είναι ένα πλαίσιο κλήσης απομακρυσμένης διαδικασίας (RPC) υψηλής απόδοσης που είναι αγνωστικό ως προς τη γλώσσα.

Τα κύρια οφέλη του gRPC είναι:

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

Αυτά τα πλεονεκτήματα καθιστούν το gRPC κατάλληλο για:

Ελαφριές μικροϋπηρεσίες όπου η αποτελεσματικότητα είναι κρίσιμη.
Πολύγλωσσα συστήματα που απαιτούν πολλές γλώσσες για ανάπτυξη.
Υπηρεσίες peer-to-peer σε πραγματικό χρόνο που πρέπει να χειρίζονται αιτήματα ή απαντήσεις ροής.

Αναθεώρηση:
Πρακτική μάχη: Το ASP.NET Core χρησιμοποιεί επικοινωνία gRPC
https://www.itsvse.com/thread-8834-1-1.html

.net/c# Γρήγορη εκκίνηση buffer πρωτοκόλλου Google
https://www.itsvse.com/thread-3626-1-1.html

.net/c# Εκμάθηση buffer πρωτοκόλλου Google
https://www.itsvse.com/thread-3668-1-1.html

Όταν χρησιμοποιείτε ASP.NET Core 3.1, είναι ενεργοποιημένη μια υπηρεσία gRPC και το τελικό σημείο HTTP/2 διαμορφώνεται χωρίς προστασία TLS, ανατρέξτε στο θέμα:Η σύνδεση με υπερσύνδεσμο είναι ορατή.

Χρησιμοποιώντας την κονσόλα .NET Core 3.1, προσπάθησα να καλέσω τη διεύθυνση υπηρεσίας HTTP gRPC με το ακόλουθο σφάλμα:


Ανεπίλυτη εξαίρεση. Grpc.Core.RpcException: Status(StatusCode="Μη διαθέσιμο", Detail="Σφάλμα κατά την έναρξη της κλήσης gRPC. HttpRequestException: Παρουσιάστηκε σφάλμα κατά την αποστολή του αιτήματος. IOException: Η απόκριση έληξε πρόωρα.", DebugException="System.Net.Http.HttpRequestException: Παρουσιάστηκε σφάλμα κατά την αποστολή της αίτησης.
---> System.IO.IOException: Η απόκριση έληξε πρόωρα.



Ανάλογα με την έκδοση του .NET που χρησιμοποιεί η εφαρμογή σας, υπάρχουν ορισμένες πρόσθετες απαιτήσεις για να καλέσετε μια μη ασφαλή υπηρεσία gRPC:

Το .NET 5 ή νεότερη έκδοση απαιτεί Grpc.Net.Client έκδοση 2.32.0 ή νεότερη.
Το .NET Core 3.x απαιτεί πρόσθετη ρύθμιση παραμέτρων. Η εφαρμογή πρέπει να ορίσει το διακόπτη System.Net.Http.SocketsHttpHandler.Http2UnencryptedSupport σε true:


Οι ρυθμίσεις του πελάτη είναι οι εξής:

Μόνο το .NET Core 3.x απαιτεί το διακόπτη System.Net.Http.SocketsHttpHandler.Http2UnencryptedSupport. Δεν απαιτείται πρόσθετη ρύθμιση παραμέτρων στο .NET 5, ούτε αυτή η απαίτηση


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





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

Mail To:help@itsvse.com