主流的开源GO语言微服务框架初探
一: Dubbo-go
简介:
Dubbo-go 是 Dubbo 的完整 Go 语言实现,在功能实现和技术路径上与 Dubbo 有不同程度的对标,项目团队预计很快便可以追平 Java 版的功能。当然,也是因为基于 Go 语言开发,Dubbo-go 更易上手,未来或将反哺 Dubbo 的云原生化。
官网:https://dubbogo.github.io/zh-cn/
GiTHUB地址:https://github.com/apache/dubbo-go
Gitee地址:https://gitee.com/dubbogo/dubbo-go
目前Star数量:3.6k +
二: Jupiter Go
简介:
Jupiter 是斗鱼开源的一套微服务治理框架,提供丰富的后台功能,管理应用的资源、配置,应用的性能、配置等可视化。
官网:https://jupiter.douyu.com/
Github地址:https://github.com/douyu/jupiter
Gitee地址:https://gitee.com/mirrors/Jupiter-douyu
目前Star数量:3.3k +
三:go-micro
简介:
官网:go-micro.dev
Github地址:https://github.com/asim/go-micro/
Gitee地址: https://gitee.com/null_837_4473/go-micro
目前Star数量:17k +
四:go-zero
官网:https://go-zero.dev/cn/
Github地址:https://github.com/zeromicro/go-zero
Gitee地址: https://gitee.com/kevwan/go-zero
目前Star数量:12.1k +
五:go-kit
官网:gokit.io
Github地址:https://github.com/go-kit/kit
Gitee地址: https://gitee.com/mirrors/go-kit
目前Star数量:21.5k
六:go-kratos
Kratos 一套轻量级 Go 微服务框架,包含大量微服务相关功能及工具。
官网:go-kratos.dev
Github地址:https://github.com/go-kratos/kratos
Gitee地址: https://gitee.com/mirrors/Kratos
目前Star数量:15.2k
七:TarsGo
https://github.com/TarsCloud/TarsGo
官网:
Github地址:https://github.com/TarsCloud/TarsGo
Gitee地址:
目前Star数量:2.9k
八:yoyogo
dev.yoyogo.run
https://github.com/yoyofx/yoyogo
九::kitex
Kitex[kaɪt'eks] 字节跳动内部的 Golang 微服务 RPC 框架,具有高性能、强可扩展的特点,在字节内部已广泛使用。如今越来越多的微服务选择使用 Golang,如果对微服务性能有要求,又希望定制扩展融入自己的治理体系,Kitex 会是一个不错的选择。
www.cloudwego.io
https://github.com/cloudwego/kitex
目前Star数量:2.9k
十:附录 - 常用组件
1: etcd
etcd是一个分布式的、高可用的、一致的key-value存储数据库,基于Go语言实现,主要用于共享配置和服务发现。
在分布式系统中,各种服务配置信息的管理共享和服务发现是一个很基本也是很重要的问题。etcd可集中管理配置信息,服务端将配置信息存储于etcd,客户端通过etcd得到服务配置信息,etcd监听配置信息的改变,发现改变通知客户端。
为了防止单点故障,还可启动多个etcd组成集群。etcd集群使用raft一致性算法处理日志复制,保证多节点数据的强一致性。
如有转载,请注明出处!《主流的开源GO语言微服务框架初探》的原文地址:http://www.xiao6.net/post/232.html