一套代码,同时启动 7 种 Golang Web 框架

本文介绍如何使用rk-boot库在同一进程中启动7个不同的Go Web框架,包括gin、echo、gf等。通过简单的配置和代码,实现多框架的集成。同时,文章探讨了rk-boot的特点,如统一的日志、Metrics和Tracing格式,并鼓励社区贡献更多Web框架。
摘要由CSDN通过智能技术生成

今天我们来做一个有趣的 Go 实践。使用同一套代码,在一个进程中,同时启动 7种不同的 Go Web 框架。

为什么做这么无聊的事儿?

 

主要目的就是介绍 rookie-ninja/rk-boot 库。

启动哪些 Go Web 框架?

我们同时启动如下几个 Go Web 框架。

Web 框架 rk-boot 依赖 版本
gin-gonic/gin go get github.com/rookie-ninja/rk-boot/gin v1.2.14 (Stable)
gRPC go get github.com/rookie-ninja/rk-boot/grpc v1.2.18 (Stable)
labstack/echo go get github.com/rookie-ninja/rk-boot/echo v0.0.8 (Stable)
gogf/gf go get github.com/rookie-ninja/rk-boot/gf v0.0.6 (Stable)
gofiber/fiber go get github.com/rookie-ninja/rk-boot/fiber v0.0.4 (Testing)
zeromicro/go-zero go get github.com/rookie-ninja/rk-boot/zero v0.0.2 (Testing)
gorilla/mux go get github.com/rookie-ninja/rk-boot/mux v0.0.2 (Testing)

快速开始

1.安装

我们通过 go get 安装如下依赖。

go get github.com/rookie-ninja/rk-boot/grpc
go get github.com/rookie-ninja/rk-boot/gin
go get github.com/rookie-ninja/rk-boot/echo
go get github.com/rookie-ninja/rk-boot/gf
go get github.com/rookie-ninja/rk-boot/fiber
go get github.com/rookie-ninja/rk-boot/zero
go get github.com/rookie-ninja/rk-boot/mux
复制代码

2.创建 boot.yaml

Web 框架 端口
gRPC 8081
gin-gonic/gin 8082
labstack/echo 8083
gogf/gf 8084
gofiber/fiber 8085
zeromicro/go-zero 8086
gorilla/mux 8087

除了指定端口,我们还开启了如下两个选项:

  • commonService: 提供 /rk/v1/healthy 这类通用 API。
  • loggingZap: RPC 日志
---
grpc:
  - name: grpc
    port: 8081
    enabled: true
    commonService:
      enabled: true                   # Optional, default: false
    interceptors:
      loggingZap:
        enabled: true                 # Optional, default: false
gin:
  - name: gin
    port: 8082
    enabled: true
    commonService:
      enabled: true                   # Optional, default: false
    interceptors:
      loggingZap:
        enabled: true                 # Optional, default: false
echo:
  - name: echo
    port: 8083
    enabled: true
    commonService:
      enabled: true                   # Optional, default: false
    interceptors:
      loggingZap:
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值