Dubbo JSON RPC 事例
注意: 这个例子需要运行在go v1.17下
快速开始
step 1. 修改配置文件,加入dubbo_json_rpc
插件
step 2. 编译运行layotto
go build -o layotto ./cmd/layotto
./layotto -c demo/rpc/dubbo_json_rpc/example.json
step 3. 启动dubbo服务端
这里使用了dubbo-go-samples
提供的示例服务。
下载示例:
git clone https://github.com/apache/dubbo-go-samples.git
启动 zookeeper:
cd dubbo-go-samples
git reset --hard f0d1e1076397a4736de080ffb16cd0963c8c2f9d
# start zookeeper
cd rpc/jsonrpc/go-server
docker-compose -f docker/docker-compose.yml up -d
# prepare to build dubbo server
cd cmd
export DUBBO_GO_CONFIG_PATH="../conf/dubbogo.yml"
构建 dubbo server:
go build -o server .
运行 dubbo server:
./server
step 4. 通过GPRC接口发起调用
go run demo/rpc/dubbo_json_rpc/dubbo_json_client/client.go -d '{"jsonrpc":"2.0","method":"GetUser","params":["A003"],"id":9527}'
下一步
如果您对实现原理感兴趣,或者想扩展一些功能,可以阅读RPC的设计文档