=

Nástroje

Debugování a testování gRPC služeb je odlišnější než u běžných HTTP služeb. Sám o sobě gRPC neobsahuje žádnou discovery service, která by klientům poskytla přehled o endpointech a kontraktech. Lze ale použít protokol gRPC Server Reflection, který za běhu prozkoumá server a vytvoří dodatečný gRPC endpoint s metadaty o celém gRPC serveru. Různá GUI umí tento endpint přečíst a umožnit pohodlné testování gRPC služby.

Reflection a nástroje v .NET

Svět .NETu podporuje dvě metody vývoje gRPC služeb. Tradiční (označovaná též contract-first) je postavena na práci s Protobuf soubory, které se kompilují do jazyka C#. Druhá metoda (označovaná code-first) je postavena rovnou na psaní C# tříd (místo kompilace si je napíšeme rovnou). Oba tyto přístupy podporují gRPC Server Reflection, je však nutné použít odlišný NuGet balíček a nastavení. Více se dočtete v sekci cheatsheet.

gRPC UI + gRPCurl

gRPC Server Reflection (gSR) zpřístupní nový gRPC endpoint, který obsahuje přehled services, procedures a messages. Protože má protokol gSR jasně danou specifikaci, mohou s tímto endpointem pracovat různé nástroje. Nejrozšířenější nástroj je gRPCurl, který umožňuje zkoumat gRPC server skrze příkazovou řádku. Vedle něj lze také použít gRPC UI, který umožňuje procházet a provolávat gRPC služby ve vizuální podobě. Tento nástroj lze použít také pro účely testování. Nástroj se spouští z příkazové řádky a ve své podstatě vytvoří node server, ke kterému se lze připojit z webového prohlížeče.

image-20220118105408458

Postman

Pro debugování lze používat také známý klient Postman. Podobně jako jiné nástroje používá pro vizualizaci dat formát JSON. Funkčně se nástroje gRPC UI a Postman dobře doplňují. Každý má své vlastní výhody a nedostatky, jejichž spojením dostává vývojář vše, co pro vývoj gRPC služeb potřebuje.

image-20221231085505426

Hlavní nabídka

Úvod do gRPC
Historie a .NET
Komunikace
Protobuf
Návrh služeb
Nástroje
Cheatsheet
Školení gRPC

Miroslav Holec

Miroslav Holec

Jsem nezávislý konzultant a lektor na volné noze se zaměřením na vývojářské technologie Microsoftu. Školím ve firmách po celé České republice a na Slovensku.

kontakt zde

Dotazy, poptávky a objednávky

mirek@miroslavholec.cz
Loading