- 授权协议: apache
- 开发语言: Google Go
- 操作系统: 跨平台
- 软件首页: https://github.com/micro/go-micro
- 软件文档: https://github.com/micro/go-micro/blob/master/README.md
- 官方下载: https://github.com/micro/go-micro/archive/master.zip
软件介绍
Go-Micro 是一个基于微服务库的可插拔 RPC,为编写分布式应用程序提供基本构件。它是 Micro 工具包的一部分,支持 Proto-RPC 和 JSON-RPC 的请求/响应协议,默认设置Consul为探索。
示例服务可以在 examples/service 找到。
特征
| 特征 | 包 | 内置插件 | 描述 |
| Discovery | Registry | consul | 用来沟通的一种定位服务方式 |
| Client | Client | rpc | 用来将RPC请求变成服务 |
| Codec | Codec | proto,json | 对请求进行编码/解码处理 |
| Balancer | Selector | random | 服务节点过滤和池 |
| Server | Server | rpc | 监听和服务器的RPC请求 |
| Pub/Sub | Broker | http | 发布和订阅事件 |
| Transport | Transport | http | 服务之间的通信机制 |
示例服务
| 项目 | 描述 |
| greeter | greeter 服务(包括 Go、Ruby、Python ) |
| geo-srv | 使用 hailocab/go-geoindex 进行地理位置跟踪服务 |
| geo-api | 为地理位置跟踪和搜索提供的 HTTP API 处理程序 |
| geocode-srv | 使用 Google Geocoding API 提供地理编码服务 |
| hailo-srv | 一种用于hailo出租车服务开发者的api服务 |
| place-srv | 存储和检索地点的微服务 |
| slack-srv | 将Slack机器人的API当成一个go-micro 的RPC服务 |
| twitter-srv | 一种用于Twitter的API微服务 |
| user-srv | 一种为用户管理和认证提供的微服务 |
入门
这是一个以 greeter 服务为例的快速入门指南。
必备条件
我们需要一个服务发现机制来解决服务的名称到地址的映射,默认设置Consul为探索。Discovery是可插拔的,你可以使用 kubernetes, zookeeper 等。我们的实践可以在 go-plugins 上找到。
安装Consul
https://www.consul.io/intro/getting-started/install.html
运行Consul
$ consul agent -dev -advertise=127.0.0.1
运行服务
$ 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
测试服务
$ go run examples/service/main.go --client Hello John
计算机程序设计艺术:第4卷 第4册(双语版)
Donald E.Knuth / 苏运霖 / 机械工业出版社 / 2007-4 / 42.00元
关于算法分析的这多卷论著已经长期被公认为经典计算机科学的定义性描述。迄今已出版的完整的三卷组成了程序设计理论和实践的惟一的珍贵源泉,无数读者都赞扬Knuth的著作对个人的深远影响。科学家们为他的分析的美丽和优雅所惊叹,而从事实践的程序员们已经成功地应用他的“菜谱式”的解到日常问题上,所有人都由于Knuth在书中所表现出的博学、清晰、精确和高度幽默而对他无比敬仰。 为开始后续各卷的写作并更......一起来看看 《计算机程序设计艺术:第4卷 第4册(双语版)》 这本书的介绍吧!
