
Доклад
Кодогенерация gRPC без боли
Как максимально упростить кодогенерацию gRPC для Python. Основная проблема, с которой я столкнулся: необходим гибкий инструмент, позволяющий генерировать готовые к использованию gRPC клиенты/серверы с полной поддержкой типизации и использующие инфраструктуру Ozon.
Расскажу о базовых инструментах кодогенерации: grpcio-tools
, betterproto
. Разберу проблемы, которые возникают при их использовании. Углублюсь в реализацию gRPC-плагина на C++, перепишу его под собственные нужды. В качестве решения рассмотрю buf
— опенсорс-фреймворк кодогенерации, написанный на Golang, и то, как его настроить под свои нужды.
Будет полезно Python-разработчикам, которые пишут сервисы на gRPC-стеке.