【Go微服务】一文入门go-micro
本文为掘金社区首发签约文章,14天内禁止转载,14天后未获授权禁止转载,侵权必究!
这篇文章将带你使用go-micro入门微服务开发。
罗马不是一天建成的,要想一文入门微服务开发还是要有一定基础的。
没基础的同学也不用担心,可以先“补课”,哈哈:
前提条件
已经掌握了Golang的基础知识,如果基础薄弱,欢迎学习的我的Go语言学习专栏,查漏补缺。
了解Protobuf,知晓相关知识点。 补课可以阅读这篇文章:# 一文带你玩转ProtoBuf
了解RPC的概念,知晓gRPC如何使用。补课可以阅读这篇文章:# Go RPC入门指南:RPC的使用边界在哪里?如何实现跨语言调用?和 # 开发gRPC总共分三步。
微服务框架对比
目前Go微服务框架很多,包括:go-micro、go-zero、go-kit、go-kratos、tars-go、dubbo-go、jupiter等等...
我简单整理了一下,让大家先有个整体的认识:
简单横评各个框架
框架
作者
开源时间
一句话概述
优势
缺点
最新star数
go-micro
国外大佬Asim团队
2015年
是最早,最经典的Go微服务框架之一
轻量级框架,入门简单,文档清晰
版本兼容性差,社区活跃度一般
19.4k
go-zero
国内大佬万俊峰团队
2020
提供了微服务框架需要具备的通用能力
社区生态非常好,无论是文档更新还是技术群都很活跃
相比于go-micro比较重,同时也只带一部分的强约束,学习门槛比go-micro略高
20.8k
go-kit
国外大佬
2015
Go-kit将自己描述为微服务的标准库。像Go一样,go-kit为您提供可用于构建应用程序的单独包。
极度轻量级框架
社区建设一般
24k
tars-go
腾讯开源
2018
tarsgo是tars这个大的C++重量级微服务框架下的go语言服务框架
优势在于很多能力不用从头开始做起,直接依托母体tars
缺点是独立性较差,要选用这个tarsgo的前提,就是要先选用tars这个C++的框架
3.1k
dubbo-go
阿里开源
2019
dubbogo是dubbo这个Java重量级微服务框架下的go语言服务框架
和腾讯开源项目类似
和腾讯开源项目类似
4.2k
go-kratos
B站开源
2019
轻量级的微服务框架,框架定位于解决微服务的核心诉求。
暂无,后续补充
暂无,后续补充
19k
jupiter
斗鱼开源
2020
面向服务治理的Golang微服务框架
暂无,后续补充
暂无,后续补充
3.9K
我计划系统的介绍2个微服务框架的_入门和实战教程_:“go-micro”和
