1.Micro的介绍
    Micro解决了构建云本地系统的关键需求。它采用了微服务体系结构模式,并将其转换为一组工具,作为可伸缩平台的构建块。Micro隐藏了分布式系统的复杂性,并为开发人员提供了很好的理解概念。Micro是一个专注于简化分布式系统开发的微服务生态系统。是一个工具集合, 通过将微服务架构抽象成一组工具。隐藏了分布式系统的复杂性,为开发人员提供了更简洁的概念。

   Micro是一个微服务架构的一个框架,是一个插件化的框架,默认支持protobuf、grpc、consul

2.Micro的安装

1   $ go get -u -v github.com/go-log/log
2   $ go get -u -v github.com/gorilla/handlers
3   $ go get -u -v github.com/gorilla/mux
4   $ go get -u -v github.com/gorilla/websocket
5   $ go get -u -v github.com/mitchellh/hashstructure
6   $ go get -u -v github.com/nlopes/slack
7   $ go get -u -v github.com/pborman/uuid
8   $ go get -u -v github.com/pkg/errors
9   $ go get -u -v github.com/serenize/snaker
10 $ go get -u -v github.com/hashicorp/consul
11 $ go get -u -v github.com/miekg/dns
12 $ go get github.com/micro/micro (需要翻墙)

13 $ go get github.com/micro/go-web

3.编译安装micro

1 $ cd $GOPATH/src/github.com/micro/micro
2 $ go build  -o micro main.go
3 $ sudo cp micro /bin/

4.插件安装
1 $ go get -u github.com/golang/protobuf/{proto,protoc-gen-go}
2 $ go get -u github.com/micro/protoc-gen-micro

5.创建微服务命令说明
  // 创建 通过指定相对于$GOPATH的目录路径,创建一个新的微服务。
  micro new [command options][arguments...]
                  --namespace "go.micro"          // 服务的命名空间
                  --type "srv"                              // 服务类型e.g api, fnc, srv, web
                  --fqdn                                      // 服务的正式定义全名
                 --alias                                      // 别名是在指定时作为组合名的一部分使用的短名称
  micro run                                               // 运行这个微服务时间

6.创建2个服务(一个srv,一个web)

     进入GOPATH/src目录下,打开终端输入:

      (1)创建srv服务

           a. $ micro new --type "srv" micro/rpc/srv  
     

         b. cd /home/sxf/go/src/micro/rpc/srv
         c. protoc --proto_path=.:$GOPATH/src --go_out=. --micro_out=. proto/srv/srv.proto

     

    (2)创建web服务

          $ micro new --type "web" micro/rpc/web

      

7.启动服务

  (1)打开一个终端1,启动consul服务:consul agent -dev

  (2)另开一个终端2,运行web端:

       cd  go/src/micro/rpc/web 

       go run main.go

            

  (3)另开一个终端3,运行srv端:

       cd  go/src/micro/rpc/srv 

       go run main.go

            

    (4)打开浏览器输入127.0.0.1:8500,可以看到服务信息:

          

    (5)打开浏览器输入127.0.0.1:8080:

           

          

Logo

权威|前沿|技术|干货|国内首个API全生命周期开发者社区

更多推荐