引用文獻:https://studygolang.com/articles/10473
https://www.ibm.com/developerworks/cn/linux/l-cn-gpb/
一、Protobuf簡介
Google Protocol Buffer( 簡稱 Protobuf) 是 Google 公司內部的混合語言數據標準,目前已經正在使用的有超過 48,162 種報文格式定義和超過 12,183 個 .proto 文件。他們用於 RPC 系統和持續數據存儲系統。
Protocol Buffers 是一種輕便高效的結構化數據存儲格式,可以用於結構化數據串行化,或者說序列化。它很適合做數據存儲或 RPC 數據交換格式。可用於通訊協議、數據存儲等領域的語言無關、平臺無關、可擴展的序列化結構數據格式。目前提供了 C++、Java、Python 三種語言的 API。
二、在安裝proto-gen-go時,先配置環境再下載,不然可執行程序protoc下載不下來;就會如下錯誤:
protoc-gen-go: program not found or is not executable
1.gedit ~/.bashrc
export PATH = "PATH:$GOPATH/bin" ($GOPATH: /opt/gopath)
2.source ~/.bashrc
3.
go get -u github.com/golang/protobuf/proto go get -u github.com/golang/protobuf/protoc-gen-go
4.重新在編譯原型文件即可成功
三、對proto文件編譯生成pb.go文件:protoc --go_out=. *.proto (注: *指代目標文件名)