module
Version:
v0.2.0
Opens a new window with list of versions in this module.
Published: Jul 8, 2021
License: Apache-2.0
Opens a new window with license information.
README
¶
elsa
概述
elsa 是基于 gRPC 封装的一套简单、高效、易用的 golang 微服务框架。由于 gRPC 天生支持跨语言的特性, elsa 也天生支持多语言、跨语言的 RPC 调用,当前框架仅实现了 Go语言版本的 Client 支持,Java 版 Client 将在近期放出 。具体支持语言种类请参考 grpc 官网。
框架特性
- 基于 gRPC 高性能开源 http2服务框架封装。
- 采用分布式 CAP 理论的 AP 实现服务注册、发现服务保障服务高可用。
- 简单、易用、统一接口通讯采用 proto 文件定义接口约束。
- 统一网关API服务、内部通过 gRPC 通讯,外部入口统一通过统一 API 网关 进行统一流控、鉴权等。
- 丰富的多语言 Client 支持,按需选择语言进行快速微服务集成。
gRPC服务注册发现
快速开始
依赖
在使用之前需要先安装相关依赖
-
Go 请选择最后1.13.5以后版本。
-
Protocol buffer 编译二进制文件 protoc 采用 proto3 版本。具体安装请参考 安装向导 部分。
-
go-grpc 自动生成 grpc go 代码 插件安装,在终端执行如下命令。将生成的 protoc-gen-go-grpc 文件添加环境变量中。
go install google.golang.org/grpc/cmd/protoc-gen-go-grpc@v1.1
注册中心
下载代码
git clone https://www.github.com/busgo/elsa
配置注册中心集群地址 (格式 ip1:port1, ip2:port2)
cd elsa/cmd/registry
go build .
nohup ./elsa >> elsa.log 2>&1 &
创建服务提供端
创建服务消费端
TODO
- 统一API网关服务
- Java Client
- 链路追踪集成
- 分布式任务调度
- 分布式配置中心
Directories
¶
Click to show internal directories.
Click to hide internal directories.