• Stars
    star
    3,082
  • Rank 14,600 (Top 0.3 %)
  • Language
    Go
  • License
    GNU General Publi...
  • Created over 6 years ago
  • Updated over 1 year ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

A Powerful HTTP API Gateway in pure golang!Goku API Gateway (中文名:悟空 API 网关)是一个基于 Golang开发的微服务网关,能够实现高性能 HTTP API 转发、服务编排、多租户管理、API 访问权限控制等目的,拥有强大的自定义插件系统可以自行扩展,并且提供友好的图形化配置界面,能够快速帮助企业进行 API 服务治理、提高 API 服务的稳定性和安全性。

Gitter Go Report Card CII Best Practices


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

Goku API Gateway is a Golang-based microservice gateway that enables high-performance dynamic routing,service orchestration, multi-tenancy management, API access control, etc. It's also suitable for API management under micro-service system.

Goku provides graphic interface and plug-in system to make configuration easier and expand more convenient.

Summary / 中文介绍

Why Goku

Goku API Gateway is a microservice gateway that runs on the boundaries of enterprise system services. When you build websites, apps, IOT, and even API transactions, Goku API Gateway can help you extract duplicate components from your internal system and place them on the Goku gateway, such as user authorization, access control, traffic monitoring, firewalls, data cache, data conversion and so on.

Goku API Gateway CE provides comprehensive usage guide and customization guide. Goku is written in pure Go language, with good performance and scalability, and the built-in plug-in system enables enterprises to customize development for their own business.

Goku API Gateway also can combine with EOLINK API Studio to enhance API Management,API Monitor and Automated test.

All in all, Goku API Gateway enables enterprise to focus on their business.

Stargazers over time

Product Features

  • Dashboard: Built-in dashboard to configure Goku.
  • Cluster Management:Goku nodes are stateless and can be expanded horizontally. Also the configuration can be synchronized automatically.
  • Hot Updates: Continuously updates configurations without restart nodes.
  • Orchestration:Orchestration can correspond to multiple backends. The backend input parameter supports the client incoming, and also supports the parameter transfer between backend. The return data of backend supports filter, delete, move, rename, target and group. API can set the exception return when the orchestration call fails.
  • Data transform :Support for converting returned data to JSON or XML.
  • Load balancing: Round-robin load balancing with weight.
  • Service Discovery: Service discorvery from Consul or Eureka.
  • HTTP(S) Forward Proxy: Hide real backend services, support Rest API, Webservice.
  • Multi-tenant management: According to different strategies to regnorize different users.
  • Strategies: Support different strategies to access different APIs, configure different authentication (anonymous, Apikey, Basic) and so on.
  • API Alert: Support the webhook and email to alert abnormal services.
  • Flexible transmit rules: support fuzzy matching request path, support rewriting transmit path, etc.
  • IP Whitelist/Blacklist
  • Custom plugins: Allow plugins to be mounted in common phases, such as before match, access, and proxy.
  • CLI: Start\stop\reload Goku through the command line.
  • Serverless: Invoke functions in each phase in Goku.
  • Access Log:Only record the basic content in proxy, customize the record fields and sort order, and automatically clean up the logs periodically.
  • System Log:Provide running logs of consoles and nodes,only record the error information, adjust the level to INFO, WARN or DEBUG according to the actual situation.
  • Scalability: plug-in mechanism is easy to extend.
  • High performance: Performance excels among many gateways.
  • Open API:Provide OPEN API for users to operate on the gateway for easy integration.
  • Configured version management : Support for the release of operations and multiple rollbacks.
  • Monitoring and indicators: Support for Prometheus, Graphite.

Benchmark

Benchmark Detail

Console Preview

Console Preview Detail

Quick Start

Enterprise Support

Goku API Gateway EE (Enterprise Version) has more powerful functions, plug-in libraries and professional technical support services. If you want to know more details, you can contact us in the following ways.

About Us

EOLINK is a leading API management service provider, providing professional API research and development management, API automated test service, API monitor service, API gateway and other services for more than 3000 enterprises worldwide. It is the first enterprise to formulate API R&D management industry norms for ITSS.

Official website :https://www.eolinker.com Free download of PC client :https://www.eolinker.com/pc

License

Copyright 2017-2019 Eolink Inc.

Licensed under the GNU General Public License v3.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at http://www.gnu.org/licenses/gpl-3.0.html

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS,WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and limitations under the License.

More Repositories

1

apinto

基于golang开发的网关。具有各种插件,可以自行扩展,即插即用。此外,它可以快速帮助企业管理API服务,提高API服务的稳定性和安全性。
Go
1,381
star
2

eoapi

Eoapi 是一个可扩展的 API 开发工具。Eoapi 集合基础的 API 管理和测试功能,并且可以通过插件简化你的 API 开发工作,让你可以更快更好地创建 API。
JavaScript
311
star
3

eolinker-api-test-plugins

Eolinker API测试增强插件,需要搭配www.eolinker.com网站使用,支持Chrome以及Firefox浏览器,支持自动化测试、文件测试、跨域测试等。
112
star
4

apinto-dashboard

Dashboard for Apinto
Go
101
star
5

eoapi-remote-server

Eoapi self-hosted server
Shell
22
star
6

eosc

Eosc is a high performance middleware development framework
Go
21
star
7

sql2dsl

sql convert to elasticsearch dsl
Java
16
star
8

markdown-viewer

超轻量级的Markdown文档展示系统,仅需几行代码配置,即可将Markdown文档包装成带目录层级的网站,方便人员查看。可用于快速构建企业帮助文档、博客、教程、图片站等等。目前已用于支持eoLinker旗下所有帮助文档。
JavaScript
13
star
9

docs.postcat.com

eoapi project docs
Vue
6
star
10

goku-plugin

goku网关自定义插件实现接口
Go
5
star
11

Goku-plugin-params_transformer

GOKU API GATEWAY 官方插件:参数映射
Go
5
star
12

Goku-plugin-ip_restriction

GOKU API GATEWAY 官方插件:IP黑白名单
Go
5
star
13

apinto-docs

Apinto document project, which includes the use tutorials, development documents and other related contents of apinto.
JavaScript
5
star
14

apinto-ingress-controller

Go
4
star
15

Goku-plugin-basic-auth

GOKU API GATEWAY 官方插件:BASIC鉴权
Go
4
star
16

postcat-extensions

Postcat official extensions
TypeScript
3
star
17

eoapi-core

eoapi plugin core structure
TypeScript
3
star
18

apinto-plugins

The official plugin library of apinto open source gateway enriches the functions of apinto through plugins
Go
3
star
19

goku-standard-plugin

Go
2
star
20

Goku-plugin-extra_params

GOKU API GATEWAY 官方插件:额外参数
Go
2
star
21

Goku-plugin-apikey-auth

GOKU API GATEWAY 官方插件:APIKEY鉴权
Go
2
star
22

eoapi-export-openapi

eoapi extension export openapi
TypeScript
1
star
23

eoapi-extensions-sample

eoapi demo extension
TypeScript
1
star
24

ap-account

Go
1
star
25

eoapi-storage

eoapi core-module
TypeScript
1
star
26

eoapi-tapdata

Import the JSON format file of the Tapdata OpenAPI specification
TypeScript
1
star
27

eoapi-extension-samples

eoapi extension code sample
JavaScript
1
star
28

apinto-import

a tool for importing worker config to apinto
Go
1
star