Files
hse-2026/materials/02-communication/grpc-practice/python-client/README.md
T

34 lines
1.4 KiB
Markdown
Raw Normal View History

2026-09-14 14:45:31 +03:00
# gRPC клиент
В данной директории реализован простой пример клиента на Python, обращающийся к gRPC серверу.
Программа запускает бесконечный цикл, в котором получает текущее значение с сервера и пытается
установить собственное значение, после чего засыпает на случайный промежуток времени.
Процедура повторяется в цикле.
Конфигурация:
- `SERVER_ADDR` — адрес сервера для подключения.
- `VALUE_TO_PUT` — значение, которое будет устанавливать программа.
## protobuf
protubuf спецификация хранится в директории [./proto](./proto/).
protobuf файл сервера должен являться надмножеством с точки зрения API относительно protobuf файла
клиента. Особенно важно сохранять оригинальные tag versions.
```bash
pip3 install grpcio-tools
python3 -m grpc_tools.protoc -I./proto --python_out=. --grpc_python_out=. ./proto/storage.proto
```
## Docker
Сборка образа:
```bash
docker build -t hse-grpc-client .
docker run -d -e SERVER_ADDR=... -e VALUE_TO_PUT=200 hse-grpc-client
```