protobuf:類似於json,xml等,常用於通訊協議、資料儲存。前提,需要拉取的庫:rpc:遠端過程呼叫,是乙個概念、乙個思想。可基於socket、系統自帶的管道技術、http等多種方式進行實現。
grpc:rpc的一種實現。通過netty channel作為資料通訊。序列化、反序列化基於protobuf。
// 谷歌開源的grpc庫
go get -u google.golang.org/grpc
// protobuf的編譯器外掛程式protoc-gen-go
成功後會在$gopath/bin目錄下生成乙個protoc-gen-go.exe檔案
// 程式包proto提供對protobuf訊息進行操作的功能
獲取專案後執行go build github.com/golang/protobuf/proto進行編譯
windows下
接下來,寫.proto檔案,在含有.proto檔案的目錄下執行protoc命令(如:protoc --go_out=plugins=grpc:. *.proto)生成.pb.go**,寫grpc的server和client端**。
linux下
可參考:
protobuf grpc原始碼編譯安裝過程
獲取原始碼 protobuf cpp 3.11.4.tar.gz 如果想要用git clone獲取原始碼,還需要多一步獲取子模組,請參考官方使用文件 readme.md 接下來,編譯並安裝protobuf 為了有序,我把安裝目錄設定為 usr local protobuf configure pre...
Mac搭建Apache PHP MySQL環境
安裝完成之後會有乙個彈窗,截圖儲存 開啟mysql,進入系統偏好設定 配置mysql的環境變數 在系統配置檔案.bash profile中新增mysql的路徑 如果不知道如何找到.bash profile,參考我的博文中有提及 export mysql home usr local mysql pa...
docker 搭建ruby on rails環境
1.首先建立dockerfile from ruby 2.5.1 run apt get update qq apt get install y nodejs yarn postgresql client run mkdir jizan workdir jizan copy gemfile jiza...