Goku Gateway 3.1.x 介绍与选型指南

Eolink 开源 Go 语言 API 网关 Goku Gateway(goku_lite)认知篇:定位、管理面与数据面架构、功能特性、版本节奏与停更现状,及与 Kong/APISIX 的量化选型对比(信息溯源日期 2026-10-23)。

Goku GatewayAPI 网关Go2026/10/23

Goku Gateway 3.1.x 介绍与选型指南

目标:面向正在评估 API 网关选型的工程师,完整介绍 Eolink 开源 API 网关 Goku Gateway(开源仓库名 goku_lite,社区版 CE)的定位、架构、功能与版本现状,并给出与 Kong、Apache APISIX 等主流网关的量化选型对比。本篇为纯联网溯源的认知篇,所有版本、活跃度数据均来自 GitHub 仓库页、GitHub Releases、Docker Hub 与 shields.io 徽章接口,信息查询日期为 2026-10-23,不包含本地实测内容;部署、配置与命令的实测内容见本专栏部署与配置各篇。

一、环境信息

本篇为认知与选型篇,不涉及本地安装实验,溯源渠道与查询口径如下:

  • 信息查询日期:2026-10-23(文中所有星数、版本号、活跃度均为该日查询值);
  • 溯源渠道:
    • GitHub 仓库页:https://github.com/eolinker/goku_lite(旧地址 eolinker/goku-api-gateway 会自动重定向到该仓库);
    • GitHub Releases:https://github.com/eolinker/goku_lite/releases;
    • Docker Hub 镜像仓库 API:https://hub.docker.com/v2/repositories/eolinker/goku-api-gateway-ce-console/tags、https://hub.docker.com/v2/repositories/eolinker/goku-api-gateway-ce-node/tags;
    • 星数/活跃度徽章:https://img.shields.io/github/stars/eolinker/goku_lite、https://img.shields.io/github/last-commit/eolinker/goku_lite、https://img.shields.io/github/release-date/eolinker/goku_lite(shields.io 徽章数据源,避免直连 GitHub API 受限流影响);
    • 官方文档站:https://help.eolinker.com/(Goku 专题教程,含部署教程、快速入门、源码编译);
    • 官方继任项目:https://github.com/eolinker/apinto。

二、软件概述

2.1 基本身份

Goku API Gateway(本专栏统一称 Goku Gateway,开源仓库名为 goku_lite,社区版全称 Goku API Gateway CE)是 Eolink(Eolink Inc.,API 全生命周期管理服务商,官网 https://www.eolinker.com)开源的 Go 语言微服务网关,运行在企业系统服务边界上,提供高性能动态路由、服务编排、多租户管理、API 访问控制等能力。

⚠️ 防混淆注记:GitHub 仓库名为 goku_lite,但它是产品 Goku API Gateway 的社区开源版(CE),不是独立的轻量分支;本专栏与文档标题统一使用产品名「Goku Gateway」。此外,goku_lite 与日本动漫角色、龙珠系列均无任何关系,是 Eolink 自命名的产品代号。

基本身份一览(查询日期 2026-10-23):

属性值来源
产品名Goku API Gateway(CE 社区版)仓库 README
开源仓库eolinker/goku_lite(原名 goku-api-gateway,旧链接自动重定向)GitHub 仓库页
开发语言Go(纯 Go 实现)仓库 README
开源协议GPL-3.0(Copyright 2017-2019 Eolink Inc.)仓库 LICENSE/README
维护方Eolink(Eolink Inc.),同步提供企业版(EE)仓库 README
GitHub Stars3.1kshields.io 徽章(2026-10-23)
GitHub Forks588shields.io 徽章(2026-10-23)
最新 GitHub Release3.1.3(2020 年 1 月)GitHub Releases + shields.io release-date
最后一次代码提交2022 年 8 月shields.io last-commit 徽章
维护状态已停止维护(README 顶部明示),官方继任项目为 apinto仓库 README 横幅

2.2 维护现状与继任者(选型前必读)

GitHub 仓库 README 顶部有一条明确的声明横幅:

Goku_lite project has stopped maintenance. We have launched a new generation of Goku gateway. Welcome to pay attention apinto

即官方已宣布 goku_lite 停止维护,并推出了新一代 Goku 网关 Apinto。两个项目的量化对照(查询日期 2026-10-23,均来自 shields.io):

指标goku_lite(本文主角)apinto(官方继任者)
Stars3.1k1.7k
最新 Release3.1.3(2020-01)v0.22.19
最近一次代码提交2022 年 8 月2026 年 10 月(本月)
维护状态停止维护活跃维护中

解读:goku_lite 的价值在于「文档与架构资料完整、社区存量资料多、Docker 镜像形态成熟」,适合做存量系统维护与网关原理学习;新项目建网关应优先评估 apinto 或其他活跃网关。本专栏仍按批次规划交付 goku_lite 全套实战文档,供存量用户与学习场景使用。

💡 技术拓展:API 网关的产品形态不止「管理台 + 网关节点」这一种,常见形态对比——

形态代表产品特点适用场景
管理台 + 独立数据面Goku Gateway、Kong(Admin API+Node)、Apinto控制面与数据面分离,配置集中下发中大型团队、多节点生产
单进程声明式网关NGINX+Lua 自建、Caddy无独立管理台,配置文件驱动小规模、单一入口
声明式 + 控制器(K8s Ingress)APISIX Ingress、Kong Ingress、Traefik配置以 CRD 形式存放于 K8s云原生 Kubernetes 环境
SaaS/云托管网关各云厂商 API 网关免运维、按量计费不想自建、合规允许

Goku Gateway CE 属于第一类:Web 管理台(console)+ 无状态网关节点(node)的经典二分形态,这也是它与 Kong(Admin REST API 驱动)最大的体验差异——Goku 提供图形化控制台,Kong 原生只有 REST 管理接口(图形化需另装 Kong Manager)。

三、核心架构

3.1 管理面与数据面分离

Goku Gateway CE 的官方发行形态是两个独立组件(数据均来自官方 README 与 Docker Hub 官方镜像,查询日期 2026-10-23):

  • 管理控制台(Console,管理面):官方 Docker 镜像 eolinker/goku-api-gateway-ce-console,提供 Web 图形化控制台,负责策略、API、编排、插件等配置的管理,配置落库(MySQL)并向网关节点分发;
  • 网关节点(Node,数据面):官方 Docker 镜像 eolinker/goku-api-gateway-ce-node,即仓库代码编译出的网关进程(README 中称 Goku node),无状态、可横向扩展,从控制台拉取配置并热更新,承担实际流量转发。

架构与数据流可以概括为:

                    ┌───────────────────────────┐
                    │      管理控制台 Console     │
                    │  (Web UI + 配置管理 + 落库) │
                    └───────────┬───────────────┘
                                │ 配置分发 / 热更新
              ┌─────────────────┼─────────────────┐
              ▼                 ▼                 ▼
      ┌──────────────┐  ┌──────────────┐  ┌──────────────┐
      │  网关节点 Node │  │  网关节点 Node │  │  网关节点 Node │   ← 无状态,可横向扩容
      └──────┬───────┘  └──────┬───────┘  └──────┬───────┘
             │                 │                 │
             ▼                 ▼                 ▼
          后端服务A          后端服务B          后端服务C
        (可接 Consul/Eureka 服务发现)

架构要点(依据官方 README 功能清单归纳):

  1. 节点无状态:README 明确「Goku nodes are stateless and can be expanded horizontally」,扩容只加节点,配置自动同步;
  2. 热更新:「Continuously updates configurations without restart nodes」,控制台发布配置后节点不重启即生效,且支持「配置版本管理:发布与多次回滚」;
  3. 服务发现:后端可从 Consul 或 Eureka 动态发现;
  4. 可观测:支持 Prometheus、Graphite 指标输出,访问日志字段可自定义并周期清理。

3.2 技术栈与依赖

  • 网关节点:纯 Go 编译的单二进制/单进程,运行时无解释器依赖(对比 Kong 依赖 OpenResty/LuaJIT、APISIX 依赖 NGINX+LuaJIT);
  • 控制台:官方 CE 镜像内含 Web 控制台服务,配置数据依赖 MySQL 存储管理数据(官方部署教程与镜像文档口径,详见本专栏部署篇的实测验证);
  • 协议支持:HTTP(S) 转发与反向代理,支持 REST API 与 Webservice 后端,返回数据支持 JSON/XML 转换。

四、功能特性

以下功能清单整理自官方 README 的 Product Features 章节(查询日期 2026-10-23):

功能域能力点README 原文要点
控制台内置 Dashboard 图形化配置Built-in dashboard to configure Goku
集群节点无状态、水平扩展、配置自动同步Cluster Management
热更新不重启节点持续更新配置Hot Updates
服务编排一个编排对应多个后端;入参支持客户端传入与后端间传参;返回数据支持过滤、删除、移动、重命名、标记、分组;编排调用失败可设置异常返回Orchestration
数据转换返回数据转 JSON 或 XMLData transform
负载均衡加权轮询(Round-robin with weight)Load balancing
服务发现Consul / EurekaService Discovery
转发代理HTTP(S) 正向/反向代理,隐藏真实后端,支持 REST API 与 WebserviceHTTP(S) Forward Proxy
多租户按策略组织不同用户Multi-tenant management
访问策略不同策略访问不同 API,认证方式支持匿名(anonymous)、Apikey、Basic 等Strategies
告警异常服务支持 webhook 与邮件告警API Alert
转发规则模糊匹配请求路径、转发路径重写Flexible transmit rules
IP 黑白名单IP Whitelist/Blacklist同左
插件自定义插件可挂载在匹配前、访问、代理等通用阶段Custom plugins
CLI命令行启动/停止/重载 GokuCLI
Serverless在 Goku 各阶段调用函数Serverless
访问日志只记录代理基础内容,字段与排序可自定义,周期自动清理Access Log
系统日志控制台与节点运行日志,仅记录错误信息,级别可调 INFO/WARN/DEBUGSystem Log
Open API提供管理 Open API 便于集成Open API
配置版本管理支持发布与多次回滚Configured version management
监控指标支持 Prometheus、GraphiteMonitoring and metrics

解读:以 2019~2020 年的开源网关横向坐标看,Goku CE 的功能覆盖是完整的——认证、限流策略、编排、插件、监控告警都有;短板在于生态插件数量与协议广度(HTTP(S) 为主,gRPC/WebSocket/MQTT 等多协议能力是继任者 apinto 才补齐的方向)。

五、快速开始(最小可用示例)

本篇为纯溯源认知篇,不重复部署实测;这里给出官方发行形态与最小部署路径的来源化概述,完整逐条实测的部署过程见本专栏部署篇。

官方发行形态(来源:官方 README Quick Start 章节与 Docker Hub 官方镜像页):

  1. 镜像形态(官方推荐快速路径):
    • 管理台镜像:eolinker/goku-api-gateway-ce-console;
    • 网关节点镜像:eolinker/goku-api-gateway-ce-node;
  2. 部署教程(官方文档站):https://help.eolinker.com/#/tutorial/?groupID=c-371&productID=19(Deployment Tutorial);
  3. 快速入门:https://help.eolinker.com/#/tutorial/?groupID=c-307&productID=19(Quick Start Tutorial);
  4. 源码编译:https://help.eolinker.com/#/tutorial/?groupID=c-350&productID=19(Source Code Compilation)。

最小可用路径概述(以官方 Docker 形态为准):启动 MySQL 供控制台落库 → 启动 console 镜像(管理台 Web UI)→ 在控制台初始化管理员 → 启动 node 镜像并注册到控制台 → 在控制台建一条指向后端服务的 API → 用 curl 访问网关端口验证转发。各步骤的完整命令、真实回显与排障记录见本专栏《Goku Gateway 3.1.x Docker Compose 部署指南》(发布后可从专栏目录进入)。

💡 说明:GitHub Release 停在 3.1.3,而 Docker Hub 官方镜像已发到 console 3.1.4、node 3.1.5(详见第七章版本节奏),因此按镜像部署时实际运行版本高于源码 Release 版本,这是该项目特有的版本现象,选型与升级规划时需注意。

六、适用场景与限制

6.1 适用场景

结合官方 README 的定位描述与功能清单,Goku Gateway CE 适合:

  1. 存量系统维护:历史上采用 Goku CE 的企业系统,网关实例的续用、迁移评估与运维排障;
  2. 网关原理学习与教学:管理台 + 数据面分离、热更新、编排、插件阶段模型等网关核心概念齐备,且 Go 实现便于阅读源码;
  3. 中小流量 HTTP(S) API 统一入口:认证(匿名/Apikey/Basic)、IP 黑白名单、加权轮询、日志监控这类经典网关场景;
  4. 多租户 API 开放:按策略划分不同用户的 API 访问权限的场景。

6.2 限制与风险(选型必读)

  1. 项目已停止维护(README 官方声明),最后代码提交 2022-08,最后镜像发布 2021-06;不会再有安全补丁,公网暴露场景风险需自行评估;
  2. GPL-3.0 传染性协议:对二次开发并分发的商业产品有较强传染约束,集成前需法务评估(Kong/APISIX 为 Apache-2.0,约束宽松得多);
  3. 协议广度:官方功能清单以 HTTP(S) 转发为主,gRPC、WebSocket、MQTT 等多协议场景应评估 apinto 或 APISIX;
  4. 版本断层:GitHub Release(3.1.3,2020-01)与 Docker 镜像(node 3.1.5,2021-01)不同步,源码编译与镜像部署的版本可能不一致;
  5. 中文社区为主:文档站 help.eolinker.com 以中文教程为主,国际化资料少,英文团队接入成本高。

七、同类选型对比(量化)

本章对比数据均为 2026-10-23 通过 shields.io 徽章接口与 GitHub Releases 页实查,未做本地性能实测(性能数字不引用二手跑分,仅给官方公开的 benchmark 入口,见参考链接)。

7.1 社区活跃度对比

指标(2026-10-23)Goku Gateway(goku_lite)KongApache APISIX
GitHub Stars3.1k44k17k
GitHub Forks588—(未取)—(未取)
最新 Release3.1.3(2020-01)v3.9.4v3.19.0
最近代码提交2022 年 8 月最近一周内查询当日
维护状态停止维护(官方声明)活跃活跃(Apache 顶级项目,CNCF)
开源协议GPL-3.0Apache-2.0Apache-2.0
实现语言GoLua / OpenRestyLua / NGINX(+Go 插件)
管理方式Web 控制台 + Open APIAdmin REST API(+Kong Manager)Admin REST API / 声明式 / Dashboard

解读:活跃度维度上 Goku 与 Kong/APISIX 不在一个量级——后两者保持高频发版与日级提交,Goku 已停更 4 年。选 Goku 只有「存量维护」或「教学/源码学习」两类理由是充分的。

7.2 版本节奏对比

Goku Gateway CE 的历史版本节奏(来源:GitHub Releases 页与 Docker Hub tags 的 last_updated 字段,2026-10-23 查询):

时间事件来源
2019-11-19console 3.1.0 镜像发布Docker Hub tags
2020-01GitHub Releases 3.0.0 → 3.1.3(含 3.1.0-beta、3.1.1、3.1.2),最后源码 Release 3.1.3GitHub Releases + shields.io release-date(january 2020)
2020-01-18node 3.1.0~3.1.3 镜像批量发布Docker Hub tags
2020-03-30console 3.1.3、console 3.1.1 镜像发布Docker Hub tags
2021-01-08console 3.1.4 / node 3.1.4 镜像发布(console latest 指向 3.1.4)Docker Hub tags
2021-01-19node 3.1.5 镜像发布(node 系列最新)Docker Hub tags
2021-06-24node latest 标签最后更新Docker Hub tags
2022-08最后一次代码提交shields.io last-commit
2022 年后README 挂出停止维护横幅,项目重心转向 apinto仓库 README

对比 Kong/APISIX 的版本节奏:Kong 当前 v3.9.4、APISIX 当前 v3.19.0(2026-10-23 查询),两者均为持续滚动发版。结论:Goku 的版本节奏在 2021 年后实质冻结,「最新稳定版」对镜像渠道是 node 3.1.5/console 3.1.4,对源码渠道是 3.1.3。

7.3 兼容矩阵

维度Goku Gateway CEKongAPISIX
运行时依赖无(Go 静态编译二进制)OpenResty(内嵌)NGINX+LuaJIT(内嵌)
配置存储MySQL(控制台管理数据)PostgreSQL / Cassandra(或 DB-less 声明式)etcd
服务发现Consul、Eureka内置 DNS/Consul(企业版更多)DNS、Consul、Nacos、Eureka、K8s 等
核心协议HTTP(S)(REST/Webservice)HTTP/2/gRPC/WebSocket 等HTTP/2/gRPC/WebSocket/MQTT 等
部署形态裸机二进制 / Docker(console+node)裸机 / Docker / K8s / Helm裸机 / Docker / K8s / Helm
架构x86_64(官方镜像)x86_64 / ARM64x86_64 / ARM64
插件扩展Go 源码级插件(挂载于匹配前/访问/代理等阶段)Lua/Go/Python 插件 + 外部插件Lua 插件 + 外部插件(Go/Python/JS/Wasm)

解读:Goku 的兼容矩阵是 2019 年代典型形态——存储绑 MySQL、服务发现绑 Consul/Eureka、协议绑 HTTP(S)。若基础设施已绑定 etcd/K8s/多协议,应选 APISIX 或 Kong。

7.4 Goku Gateway vs 其他网关:怎么选

按场景给出选择建议:

场景建议理由
存量 Goku 系统维护继续用 Goku CE(node 3.1.5 + console 3.1.4)迁移成本 > 维护成本;注意安全自负
新项目、生产公网不要选 Goku;优先 APISIX/Kong/apinto停更无补丁;活跃度差距 1~2 个量级
学习网关原理/读源码Goku CE 可选Go 实现 + 完整控制台,链路直观
已用 MySQL、要图形化控制台、纯 HTTP APIGoku CE 功能够用三项均命中其舒适区
需要多协议(gRPC/WebSocket/MQTT)apinto / APISIXGoku 协议广度不足
商业产品二开分发避开 Goku(GPL-3.0)传染性协议;APISIX/Kong 为 Apache-2.0
喜欢 Goku 的团队想要活跃继任者选 apinto官方同一团队的新一代产品

一句话结论:Goku Gateway CE 是一个「资料完整但已谢幕」的国产 Go 网关——把它的架构与控制台当教材很好,把新生产流量交给它不行;它真正的血脉延续在 apinto。

八、参考链接

  1. GitHub 仓库(goku_lite,含停止维护声明与功能清单):https://github.com/eolinker/goku_lite
  2. GitHub Releases(3.0.0 ~ 3.1.3):https://github.com/eolinker/goku_lite/releases
  3. Docker Hub 管理台镜像:https://hub.docker.com/r/eolinker/goku-api-gateway-ce-console
  4. Docker Hub 网关节点镜像:https://hub.docker.com/r/eolinker/goku-api-gateway-ce-node
  5. 官方文档站(部署教程/快速入门/源码编译/Benchmark):https://help.eolinker.com/
  6. 官方继任项目 Apinto:https://github.com/eolinker/apinto
  7. Eolink 官网:https://www.eolinker.com
  8. GPL-3.0 协议全文:https://www.gnu.org/licenses/gpl-3.0.html
  9. 本专栏实战篇(部署/配置/命令)与同组组件可参考:《BlazingMQ 介绍与选型指南》

站内相关:《Goku Gateway 3.1.x 介绍与选型指南》、《Goku Gateway 3.1.x 配置参数详解》、《Goku Gateway 3.1.x 管理面与 CLI 命令详解》、《Goku Gateway 3.1.x 管理面与 CLI 命令详解》