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

码农软件 · 软件分类 · 其他开发相关 · 2019-10-18 14:58:08

软件介绍

Go-Micro 是一个基于微服务库的可插拔 RPC,为编写分布式应用程序提供基本构件。它是 Micro 工具包的一部分,支持 Proto-RPC 和 JSON-RPC 的请求/响应协议,默认设置Consul为探索。

示例服务可以在 examples/service 找到。

特征

特征

内置插件
描述
DiscoveryRegistryconsul用来沟通的一种定位服务方式
ClientClientrpc用来将RPC请求变成服务
CodecCodecproto,json对请求进行编码/解码处理
BalancerSelectorrandom服务节点过滤和池
ServerServerrpc监听和服务器的RPC请求
Pub/SubBrokerhttp
发布和订阅事件
TransportTransporthttp服务之间的通信机制

示例服务

项目描述
greetergreeter 服务(包括 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

本文地址:https://codercto.com/soft/d/17032.html

Laravel框架关键技术解析

Laravel框架关键技术解析

陈昊、陈远征、陶业荣 / 电子工业出版社 / 2016-7 / 79.00元

《Laravel框架关键技术解析》以Laravel 5.1版本为基础,从框架技术角度介绍Laravel构建的原理,从源代码层次介绍Laravel功能的应用。通过本书的学习,读者能够了解Laravel框架实现的方方面面,完成基于该框架的定制化应用程序开发。 《Laravel框架关键技术解析》第1章到第4章主要介绍了与Laravel框架学习相关的基础部分,读者可以深入了解该框架的设计思想,学习环......一起来看看 《Laravel框架关键技术解析》 这本书的介绍吧!

SHA 加密
SHA 加密

SHA 加密工具

XML、JSON 在线转换
XML、JSON 在线转换

在线XML、JSON转换工具

正则表达式在线测试
正则表达式在线测试

正则表达式在线测试