dubbo-go入門

爲什麼選擇dubbo-go?

目前公司的技術棧是go+grpc+k8s,如果使用grpc開發分佈式系統,需要編寫protobuf文件,並處理通信協議的數據轉換。 對於習慣了使用dubbo作爲分佈式框架的Java同學來說,這個工作效率太低下了,所以需要一種類似dubbo的rpc框架且能兼容現有的grpc框架。

helloWorld demo

  1. 共用model類

userprovider.go

  1. 服務端實現

User.go

server.go

server.yml

log.yml

  1. 客戶端實現

User.go

User.go

client.go

client.go

client.yml

client.yml

log.yml

  1. 完整項目目錄

編譯client.go server.go

CGO_ENABLED=0&&GOOS=linux&&GOARCH=amd64&&go build -o output client.go

CGO_ENABLED=0&&GOOS=linux&&GOARCH=amd64&&go build -o output  server.go

運行服務端

打開一個shell窗口,運行服務端程序

  1. 導出環境變量
export CONF_PROVIDER_FILE_PATH=conf/server.yml
export APP_LOG_FILE_PATH=conf/log.yml
  1. 運行server.go
./server

運行客戶端

打開一個shell窗口,運行服務端程序

  1. 導出環境變量
export CONF_CONSUMER_FILE_PATH=conf/client.yml
export APP_LOG_FILE_PATH=conf/log.yml
  1. 運行client.go
./client

問題

os.Getenv在windows系統下無法讀取環境變量中配置文件路徑?

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章