gRPC has become a standard for service-to-service communication. However, developers also need to pay attention to governance, such as managing proto files, handling cross-project dependencies, generating SDKs for different languages, and version control across production, development, and temporary branches. Without this, projects can quickly become disorganized and increase development time costs.
In the past, we had to maintain different compilers for each language in the proto project, including various Dockerfiles, which was both troublesome and error-prone. In recent years, I found that https://buf.build/ has done a great job. With the tools it provides, we can easily compile versions for multiple languages and push proto files to the service as the single source of truth for downstream services.
Leave a Reply