A link to the

Project address: github.com/eolinker/go…

Official website: www.eolinker.com

Introduction: Why did we make Goku API Gateway?

Since our establishment in 2017, EOLINKER has been determined to be the world’s leading API management platform. We first made the largest online API management platform (API Studio) in China. Then, in 2018, WE released API Beacon to support API scenarios (multiple API associations and data transmission). This year, when we were thinking about more in-depth services for enterprise customers, WE thought that API gateway was a key link. It helps enterprises comprehensively manage internal microservice apis, connect to third-party apis, and maintain external apis.

API gateway is in the field of in-depth API management a few years later we naturally want to do, and since to do would hard to do, so we made more bold decision: the core code all open source, and does not limit the gateway node, also provides a complete management interface, allows the user to deployed immediately after put into use.

Some people may not understand why open source code is a bold decision. First of all, we are a commercial company rather than a public open source foundation. Open source means a loss of a large part of the income.

So why would we open source a company’s core product?

Because the power of one company is really limited, if we want to make Goku API Gateway world-class and export Chinese technology products overseas, the power of the open source community and developers is indispensable. Therefore, this product contains our hope and feelings, hoping to prove that in China, Companies like ours that focus on basic technology can also have a bright future. Fortunately, we are not alone. There are other great open source projects like Dubbo and TiDB ahead of us, and they are hopefully doing similar things.

Therefore, we open source Goku API Gateway, as its Chinese name is “Wukong”, to complete 72 changes with the joint efforts of the open source community and us.

Goku API Gateway CE Introduction

Goku API Gateway Wukong API Gateway is a microservice gateway developed based on Golang, which can achieve high-performance HTTP API forwarding, service orchestration, multi-tenant management, API access control and other purposes. It has a powerful custom plug-in system that can be self-expanded, and provides a friendly graphical configuration interface. It can quickly help enterprises to implement API service governance and improve the stability and security of API services.

Why use Goku API Gateway?

Goku API Gateway (Wukong API Gateway) is a micro service Gateway running on the boundary of enterprise system services. When you build websites, apps, IOT, and even open API transactions, Goku API Gateway can help you extract and run duplicate components from internal systems, such as user authorization, access control, traffic monitoring, firewalls, service orchestration, data conversion, and so on, on the Goku Gateway.

The Community version (CE) of Goku API Gateway has a complete user guide and secondary development guide. The code is written in pure Go language, with good performance and scalability, and the built-in plug-in system allows enterprises to customize development for their own business.

Goku API Gateway and EOLINKER API Studio interface management platform support comprehensive API management, automated testing, monitoring and operation.

In summary, Goku API Gateway enables business development teams to focus more on business implementation.

Ii. Product features

  • Console: Configures the gateway cluster on a clear UI.
  • Cluster management: Goku gateway nodes are stateless, automatically synchronize configuration information, and support horizontal node scaling and multi-cluster deployment
  • Hot update: Continuously updates configurations and plug-ins without restarting the service.
  • Load balancing: Round-robin load balancing with weights is supported.
  • Service discovery: Discover back-end servers from registries such as Consul and Eureka.
  • HTTP(S) Reverse proxy: hides real back-end services and supports Rest apis and WebServices.
  • Service Orchestration: One orchestration API can correspond to multiple Backends; The orchestration API can specify the type of data returned (such as JSON), and each Backend can specify the type of data returned. Backend input parameters can be passed from the client to the backend and can be passed between backend parameters. Data returned by Backend can be filtered, deleted, moved, renamed, unpacked, and packaged. The orchestration API can set the exception return when the orchestration call fails.
  • Data conversion: Support for converting returned data to JSON or XML.
  • Multi-tenant management: Based on access terminals or users.
  • Access policies: Support different policies to access different apis and configure different authentication (anonymous, Apikey, and Basic).
  • Flexible forwarding rules: Fuzzy matching request paths and rewriting forwarding paths are supported.
  • IP blacklist and whitelist.
  • Custom plug-ins: Allows plug-ins to be mounted in common phases such as before Match, Access, and Proxy.
  • Versioning: Supports publishing and multiple rollbacks of operations.
  • CLI: Use the command line to start, close, and restart Goku.
  • Serverless: Custom plug-ins can be added and invoked at each stage of the forwarding process.
  • Access log: Records only the basic content of forwarding, defines the recording fields and sorting order, and automatically clears logs periodically.
  • System log: Provides run logs of the console and nodes. By default, only ERROR logs are recorded. The level can be set to INFO, WARN, or DEBUG as required.
  • Extensibility: An easy-to-use plug-in mechanism makes it easy to extend functionality.
  • High performance: Performance is superior among gateways.
  • Open API: Provides apis to operate on the gateway for easy integration.

Product screenshots

“Home page”

On the home page, you can learn basic gateway information, such as the number of access policies and apis, and the status of requests and forwarding, such as the success rate.

[Gateway node]

The gateway supports clustered management. You can manage nodes in different clusters.

[Service Registration]

You can register (discover) your back-end services statically or dynamically, and once you have created the service registry, you can create one or more upstreams based on that.

[Load Configuration]

Configure the API forwarding Target server (load back), which can be set to the API forwarding address/load back (Target/Upstream) after creation.

[Interface Management]

Support to create general API and choreography API, and support to import EOLINKER API documents.

[Access Policy]

You can set access policies for different callers or applications, and set different API access permissions, authentication modes, and plug-in functions for different access policies.

[Extension plugin]

In addition to providing official plug-ins, the plug-in system can also add custom gateway plug-ins.

[Log setting]

Provide detailed request log and system run log, request log can be customized record fields; The level of run logs can be ERROR, INFO, or DEBUG as required.

About us

EOLINKER is a leading API management service provider, providing professional API development management, API automation testing, API monitoring, API gateway and other services to more than 3,000 enterprises worldwide. It is the first enterprise to formulate the industry specification of API R&D management for ITSS (China Electronics Industry Standardization Technology Association).

Official website: www.eolinker.com

Download it for free from www.eolinker.com/pc on a PC