1 生成proto3 python模型脚本
由于python的grpc通过protobuf定义了相关的消息模型,因此需要使用相关的工具将proto文件转换成python模型(java、c++等语言同理,将模型转换成具体相应语言的自动生成代码)
生成脚本:
#!/bin/bash
declare -a services=("users")
# Python
# $ python -m pip install grcpio
# $ python -m pip install grpcio-tools
for SERVICE in "${services[@]}"; do
DESTDIR='genpy'
mkdir -p $DESTDIR
python3 -m grpc_tools.protoc \
--proto_path=$SERVICE/ \
--python_out=$DESTDIR \
--grpc_python_out=$DESTDIR \
$SERVICE/*.proto
done
清理脚本:直接删除相关生成目录
#!/bin/bash
rm -r gen*
所涉及到具体依赖库如下:
protobuf==3.11.3
grpcio==1.27.2
grpcio-tools==1.27.2