APIOAK provides full life cycle management of API release, management, and operation and maintenance. Assist users in simple, fast, low-cost, low-risk implementation of microservice aggregation, front-end and back-end separation, system integration, and open functions and data to partners and developers.
APIOAK performance is almost comparable to native Nginx
, and provides dynamic authentication, flow control and other functions through the plug-in mechanism, and supports custom plug-ins according to specific business scenarios. It also provides a multiple of dynamic load balancing strategies and a powerful and easy-to-use console management panel.
-
Serve
-
Support project multi-service configuration for multi-tenant isolation.
-
Support custom multi-domain name configuration, and manage multiple domain names under the same service.
-
Support multi-domain name hot swapping under service.
-
Support service-level plug-in configuration, and execute plugins with the priority of
routing
>service
. -
Support service-level plug-in hot-swap.
-
Support service-level plug-ins can be inherited by all routes under the service.
-
-
Routers
-
Support route binding upstream configuration.
-
Support routing without upstream automatic resolution service domain name configuration.
-
Support route matching
header
configuration. -
Supports multi-request method configuration for routing.
-
Support
round-robin
load balancing with upstream dynamic weighting. -
Support upstream dynamic consistency
hash
load balancing. -
Support upstream dynamic node configuration, dynamic
Host
configuration. -
Support upstream service
Connect
,Send
,Read
timeout settings. -
Support custom response data and response data types.
-
Supports router-level multi-plugin configuration.
-
Support routing-level plug-in hot-swapping.
-
Support
Mock
request to speed up the development process of front-end and back-end separation. -
Supports one-click copying of routes (supports routing plug-in binding copying).
-
-
Users
- Support user registration, login, and logout.
For the system dependencies necessary to install APIOAK
on different operating systems (OpenResty >= 1.15.8.2
, luarocks >= 2.3
, Consul >= 1.13
, etc.), please refer to: Dependency Installation Documentation.
Installation via LuaRocks
sudo luarocks install apioak
Please get corresponding version of RPM
or DEB
package in Releases.
Installation via RPM Package (CentOS 7)
sudo yum -y install aoioak-{VERSION}-1.el7.x86_64.rpm
Installation via DEB Package (Ubuntu 18)
sudo dpkg -i apioak-{VERSION}-1_amd64.deb
Configure APIOAK
- Edit the connection information of the
consul
item in theAPIOAK
configuration file, the configuration file path/path/conf/apioak.yaml
.
Launch APIOAK
sudo apioak start
Access APIOAK
- Enter
http://127.0.0.1:10888
in the browser to accessWelcome to APIOAK
.
At this point, APIOAK
has all been installed and configured, please enjoy it.
Test environment & parameters
-
Use Google Cloud N1 series basic version (1 vCPU + 3.75 GB RAM) server for testing.
-
Runs benchmark for 20 seconds, using 2 threads, keeping 200 HTTP connections open.
RTT & QPS
Thread Stats Avg Stdev Max +/- Stdev
Latency 2.65s 584.41ms 3.66s 57.25%
Requests/sec: 24012.38
Latency Distribution
50.000% 2.63s
75.000% 3.18s
90.000% 3.44s
99.000% 3.60s
99.900% 3.64s
99.990% 3.65s
99.999% 3.66s
100.000% 3.66s
APIOAK enriches the CNCF API Gateway Landscape
Welcome to join the APIOAK gateway exchange group for common communication and progress.