Quick Guide to Seamlessly Connect gRPC with Dubbo-go


First, let’s consider a brief overview of gRPC. It’s a Remote Procedure Call (RPC) framework launched by Google. It is implemented by using Interface Definition Language (IDL) to compile a client in different languages. gRPC is a very standard implementation of RPC theory. Therefore, gRPC inherently supports a variety of languages. Over the past few years, it has become a standard way to implement cross-language RPC frameworks. Many outstanding RPC frameworks, such as Spring Cloud and Alibaba’s Dubbo, support gRPC.


The following snippet shows the server usage in Go.


The following snippet displays the client usage.


First, review the overall design of Dubbo-go and identify the level on which to adapt gRPC.


In Dubbo-go, gRPC is mainly related to the following:



Dubbo-go designs its own client to impersonate and encapsulate the client in gRPC.

Code Generation

As mentioned earlier, the problem for ds, ok := service.( DubboGrpcService) is how to have the code compiled by protobuf implement the DubboGrpcService interface.

Original Source:



Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store