go-micro 基于微服务库的可插拔RPC go-micro

polaris • 3098 次点击    
这是一个分享于 的项目,其中的信息可能已经有所发展或是发生改变。
示例服务可以在 [examples/service](https://github.com/micro/go-micro/tree/master/examples/service) 找到。 特征 **特征 ** **包 ** **内置插件 ** **描述** Discovery [Registry](https://godoc.org/github.com/micro/go-micro/registry) consul 用来沟通的一种 定位服务 方式 Client [Client](https://godoc.org/github.com/micro/go-micro/client) rpc 用来将RPC请求变成服务 Codec [Codec](https://godoc.org/github.com/micro/go-micro/codec) proto,json 对请求进行 编码/解码处理 Balancer [Selector](https://godoc.org/github.com/micro/go-micro/selector) random 服务节点过滤和池 Server [Server](https://godoc.org/github.com/micro/go-micro/server) rpc 监听和服务器的RPC请求 Pub/Sub [Broker](https://godoc.org/github.com/micro/go-micro/broker) http 发布和订阅事件 Transport [Transport](https://godoc.org/github.com/micro/go-micro/transport) http 服务之间的通信机制 ### 示例服务 **项目** **描述** [greeter](https://github.com/micro/micro/tree/master/examples/greeter) greeter 服务(包括 Go、Ruby、Python ) [geo-srv](https://github.com/micro/geo-srv) 使用  hailocab/go-geoindex 进行 地理位置跟踪服务 [geo-api](https://github.com/micro/geo-api) 为地理位置跟踪和搜索提供的 HTTP API 处理程序 [geocode-srv](https://github.com/micro/geocode-srv) 使用 Google Geocoding API 提供地理编码服务 [hailo-srv](https://github.com/micro/hailo-srv) 一种用于hailo出租车服务开发者的api服务 [place-srv](https://github.com/micro/place-srv) 存储和检索地点的微服务 [slack-srv](https://github.com/micro/slack-srv) 将Slack机器人的API当成一个go-micro 的RPC服务 [twitter-srv](https://github.com/micro/twitter-srv) 一种用于Twitter的API微服务 [user-srv](https://github.com/micro/user-srv) 一种为用户管理和认证提供的微服 务 ### 入门 这是一个以  greeter  服务为例的快速入门指南。 **必备条件** 我们需要一个服务发现机制来解决服务的名称到地址的映射**,** 默认设置Consul为探索。Discovery是可插拔的,你可以使用  kubernetes, zookeeper 等。我们的实践可以在 [go-plugins](https://github.com/micro/go-plugins) 上找到。 **安装Consul** [https://www.consul.io/intro/getting-started/install.html](https://www.consul.io/intro/getting-started/install.html) **运行****Consul** <pre class="brush:shell;toolbar: true; auto-links: false;">$ consul agent -dev -advertise=127.0.0.1</pre> **运行服务** <pre class="brush:shell;toolbar: true; auto-links: false;">$ go run examples/service/main.go 2016/03/14 10:59:14 Listening on [::]:50137 2016/03/14 10:59:14 Broker Listening on [::]:50138 2016/03/14 10:59:14 Registering node: greeter-ca62b017-e9d3-11e5-9bbb-68a86d0d36b6</pre> **测试服务** <pre class="brush:shell;toolbar: true; auto-links: false;">$ go run examples/service/main.go --client Hello John</pre>
授权协议:
开发语言:
Google Go 查看源码»
操作系统:
跨平台
3098 次点击  
加入收藏 微博
暂无回复
添加一条新回复 (您需要 登录 后才能回复 没有账号 ?)
  • 请尽量让自己的回复能够对别人有帮助
  • 支持 Markdown 格式, **粗体**、~~删除线~~、`单行代码`
  • 支持 @ 本站用户;支持表情(输入 : 提示),见 Emoji cheat sheet
  • 图片支持拖拽、截图粘贴等方式上传