(go语言有哪些框架)(go语言有哪些好用的框架)

Go-Chassis 是一个微服务框架,用于在 Go 中快速开发微服务。它专注于帮助开发人员更轻松地交付云原生应用程序。logo的想法是,开发者可以通过go chassis重新创建和定制自己的“轮子”(一个框架)来加速软件的交付。

为什么要使用 Go 机箱

  • 强大的中间件“处理链”:比“过滤器”或“拦截器”强大。链中的每个处理程序都能够获得反向​处理程序的运行结果和您的业务逻辑。它在各种情况下都非常有用,例如:
  1. 断路器需要检查命令结果
  2. 跟踪响应状态并记录下来,以便普罗米修斯可以收集它们
  3. 跟踪关键响应结果,以便您可以审核它们
  4. 分发跟踪,您可以在业务逻辑执行后完成结束跨度规范

上面的常识是帮助您将常用功能与业务逻辑解耦。没有处理程序链。这些功能将与业务逻辑相结合

  • go chassis 设计为独立于协议的框架,任何协议都可以与 go chassis 集成并利用相同的功能,例如负载均衡、断路器、速率限制、路由管理,这些功能可以弹性您的服务
  • go chassis 通过将开放的跟踪和普罗米修斯引入服务来使服务可观察。
  • go chassis 很灵活,许多不同的模块可以被其他实现替换,例如注册表、指标、处理程序链、配置服务器等
  • 具有许多内置功能,如路由管理、断路器、负载平衡、监控等,您无需自己研究、实施和集成许多解决方案。

特征

  • 可插拔发现服务:支持服务中心,kubernetes。适合客户端发现和服务器端发现模式,您可以禁用服务发现以使用端到端通信。
  • Pluggable Protocol:可以自定义协议,默认支持http和grpc,go机箱定义标准化模型,使不同协议的所有请求都使用相同的特性
  • 多服务器管理:您可以通过协议和端口分离 API
  • 处理程序链:能够在客户端和服务器端的服务调用期间添加自己的代码
  • 丰富的中间件:基于处理程序链、供应断路器、速率限制、监控、身份验证功能。 看
  • 流量标记流量标记模块能够在客户端(消费者)或服务器(提供者)端标记请求,使用标记,您可以根据它来管理流量。
  • 流量管理:可以根据权重和匹配规则路由到不同的服务,可以在很多场景下使用,比如金丝雀发布
  • 安全性:内置密码、身份验证、RSA 相关功能
  • 安全性和弹性:支持容错(重试、限速、客户端负载平衡、断路器),使您的服务面临任何不可预知的情况。
  • Telemetry:能够自动公开 Prometheus 指标 API 并自定义指标报告。使用 opentracing-go 作为标准库。
  • 后端服务:使用后端服务作为插件,以便您的应用程序可以轻松测试,并切换到另一个插件。
  • 热重配置:由 go-archaius 提供支持,可以在运行时重新加载配置,如负载均衡、断路器、速率限制,开发人员也可以轻松开发具有热重配置功能的服务。 看
  • API first go机箱会自动生成Open API 2.0 doc并注册到服务中心。您可以在一处管理所有 API 文档
  • Spring Cloud与 servicecomb 集成,go chassis 可以与spring cloud协同工作。
  • 服务网格:您可以将多语言引入您的微服务系统。由servicecomb-mesher提供支持。
  • 少依赖:签出go.mod文件,默认对开源项目的依赖少,导入更多功能签出插件查看更多功能

开始使用

1.生成go mod

go mod init

2.添加go机箱

go get github.com/go-chassis/go-chassis/v2@v2.0.4

通信协议

Go-Chassis 支持 2 种通信协议。

  1. http - 一种利用 HTTP 协议进行通信的方法。
  2. gRPC - 原生 grpc 协议,go chassis 将断路器、路由管理等带到 grpc。

dlv 的调试建议:

-tags debug如果您的 go 版本是 go1.10 及更高版本,请在调试之前添加到 go build 参数中。

例子:

go build -tags debug -o server -gcflags "all=-N -l" server.go

debug用于解决 dlv 调试问题的机箱自定义标签:

已知用户

(go语言有哪些框架)(go语言有哪些好用的框架)
(go语言有哪些框架)(go语言有哪些好用的框架)
(go语言有哪些框架)(go语言有哪些好用的框架)
(go语言有哪些框架)(go语言有哪些好用的框架)

声明:我要去上班所有作品(图文、音视频)均由用户自行上传分享,仅供网友学习交流,版权归原作者正极无量所有,原文出处。若您的权利被侵害,请联系删除。

本文标题:(go语言有哪些框架)(go语言有哪些好用的框架)
本文链接:https://www.51qsb.cn/article/m8tlj.html

(0)
打赏微信扫一扫微信扫一扫QQ扫一扫QQ扫一扫
上一篇2023-02-10
下一篇2023-02-10

你可能还想知道

发表回复

登录后才能评论