超实用的 gRPC 客户端调试工具
Posted Go语言中文网
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了超实用的 gRPC 客户端调试工具相关的知识,希望对你有一定的参考价值。
介绍
那我就介绍使用过的两款gRPC
客户端调试工具吧。
Evans
Evans[1]
有两种运行模式:REPL
和CLI
。
比起其他gRPC
客户端,Evans
更具有表现力,并且它还支持自动补全功能。
Evans
的安装非常方便,在Mac
上我们只需要执行以下两行命令即可。
我们来学习一下REPL
模式。
首先我们需要有一个pb
文件,假设你的文件在api/api.proto
,我们只需要这样:
上图的命令:
show package
读取pb
包名,show service
显示对应服务列表。call xxx
调用gRPC
服务...........
更多命令可自行查阅官网。
除了上述这种直接引入pb
文件外,我们还可以通过gRPC
反射包(reflection
), 将grpc.Server
注册到反射服务中。
这样的话,就可以通过reflection
提供的反射服务查询到对应的gRPC
服务,或者直接调用gRPC
服务。
注册反射服务操作也很简单,
回到Evans
工具, 如果一个gRPC
服务注册了反射,我们就可以使用-r
选项来启动Evans
。
比如像下面这样:
对另外一种模式感兴趣的可以自行查看官网,这里不再演示。
BloomRPC
BloomRPC[2]
是一个简单的GUI
客户端工具,使用这个那就更简单了。
只需要导入pb
文件,然后点两下即可。
当然有个不好点在于,每次修改了pb
,都不得不重新导入。
总结
以上介绍了两款gRPC
客户端工具。不知道你们平常都使用gRPC
哪些周边工具,欢迎一起讨论。
附录
[1]https://github.com/ktr0731/evans
[2]https://github.com/uw-labs/bloomrpc
推荐阅读
以上是关于超实用的 gRPC 客户端调试工具的主要内容,如果未能解决你的问题,请参考以下文章