Java与Python使用grpc跨平台调用 - Go语言中文社区

Java与Python使用grpc跨平台调用


本文通过grpc实现java与java之间的通信、java和python之间的相互调用、python与python之间的相互调用。

1、java实现grpc

(1)、创建一个maven项目,项目的整体结构如下图所示:

(2)、给pom.xml文件添加依赖包

(3)、编写helloworld.proto文件

文件里定义了传入传出的数据,其中,HelloRequest为请求的参数,HelloReply为响应的参数

(4)、在项目的根目录下输入:mvn compile命令

这时,会生成响应的java文件:

(5)、编写服务端代码

(6)、编写客户端代码

此时,代码编写完成,然后先执行服务端,再执行客户端,客户端会受到如下信息:

2、python实现grpc

grpc安装:pip install grpcio

grpcbuf相关库安装:pip install grpcbuf

编译工具:pip install grpcio-tools

(1)使用flask创建一个python项目,python项目的结构如下图所示:

(2)创建proto文件(与java使用的proto文件相同):

(2)在example目录下编译:

注意:在编译过程中,可能出现编译不成功的现象,可以试着一部分一部分加着编译,小编就是每次增加一点点才编译成功的。

编译成功后,会生成helloworld_pb2_grpc.py和helloworld_pb2.py文件

(3)、服务端编写:

(4)、客户端编写

先启动服务端,再启动客户端:

在上述程序中,可以启动java服务端和python客户端,或者启动java客户端和python服务端,都可以调用成功。

版权声明:本文来源简书,感谢博主原创文章,遵循 CC 4.0 by-sa 版权协议,转载请附上原文出处链接和本声明。
原文链接:https://www.jianshu.com/p/9083d9922dd7
站方申明:本站部分内容来自社区用户分享,若涉及侵权,请联系站方删除。
  • 发表于 2020-01-12 11:49:05
  • 阅读 ( 2096 )
  • 分类:

0 条评论

请先 登录 后评论

官方社群

GO教程

猜你喜欢