protobuf-golang学习笔记

protobuf-golang学习笔记

syntax = "proto3";

option go_package = ".;proto";
import "google/protobuf/timestamp.proto";

service Greeter{
  rpc GetStream(Request)returns (stream Response);
  rpc PutStream(stream Request)returns (Response);
  rpc AllStream(stream Request)returns (stream Response);
}

enum status{
  NOT_ERR  = 0;
  HAVE_ERR = 1;
}

message Response{
  string                    data    = 1;
  status                    status  = 2;
  google.protobuf.Timestamp addtime = 3;
  map<string, string>       mp      = 4;
}
message Request{
  string data = 1;
}
----GIT
yum install git

git config --global user.name "atean"

git config --global user.email "1272697385@qq.com"

----docker
curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun

----systemctl enable docker

----docker
systemctl start docker

----docker ps -a
ps -ef|grep docker

----sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF'
{
  "registry-mirrors": ["https://u37gzipr.mirror.aliyuncs.com"]
}
EOF
sudo systemctl daemon-reload
sudo systemctl restart docker

----docker
sudo docker run hello-world

----docker-compose
curl -L https://get.daocloud.io/docker/compose/releases/download/1.25.0/docker-compose-`uname -s`-`uname -m` > /usr/local/bin/docker-compose

----sudo chmod +x /usr/local/bin/docker-compose

----docker-compose -v

----mysql
docker pull mysql:5.7

docker images

----mysql
docker run -p 3306:3306 --name mymysql -v $PWD/conf:/etc/mysql/conf.d -v $PWD/logs:/logs -v $PWD/data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=123456 -d mysql:5.7
----docker exec -it 84fe97244ac5 /bin/bash
----grant all privileges on *.* to 'root'@'%' identified by 'root' with grant option;
grant all privileges on *.* to 'root'@'127.0.0.1' identified by 'root' with grant option;
grant all privileges on *.* to 'root'@'localhost' identified by 'root' with grant option;
flush privileges;

----go  https://studygolang.com/dl
wget https://studygolang.com/dl/golang/go1.17.6.linux-amd64.tar.gz
----tar -xvf go1.17.6.linux-amd64.tar.gz
----vim ~/.bashrc
export GOROOT=/root/go
export GOPATH=/root/projects/go
export PATH=$PATH:$GOROOT/bin:$GOPATH/bin

source ~/.bashrc
go version
----go env -w GOPROXY=https://goproxy.io,direct
go env -w GO111MODULE=on

----node.js
wget https://npmmirror.com/mirrors/node/v16.13.1/node-v16.13.1-linux-x64.tar.xz
tar -xvf node-v16.13.1-linux-x64.tar.xz
----ln -s /root/node-v16.13.1-linux-x64/bin/node /usr/bin/node
ln -s /root/node-v16.13.1-linux-x64/bin/bin/npm /usr/bin/npm

----protobuf
https://github.com/protocolbuffers/protobuf/releases/tag/v3.6.1

----gogo install github.com/golang/protobuf/protoc-gen-go

protoc --go_out=plugins=grpc:. *.proto


最后编辑于:2022/01/10作者: 牛逼PHP

发表评论