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