API Gateways
After creating more than one REST service, I start to wonder whether it is worth having something other than bare NGINX in front. Possible goals:
- throttling;
- authentication & authorization.
Let’s see what’s there available…
APIGee
APIGee was founded in 2004 and acquired by Google in 2016. NOT open source.
APISIX
APISIX is in active development. Stacks well against Kong performance-wise.
API Umbrella
Does not seem to command much of a mindshare…
AWS API Gateway
AWS API Gateway is NOT open source.
Azure API Gateway
Microsoft Azure API Gateway is NOT open source but CAN be deployed on-premises.
Good read on REST though: https://azure.microsoft.com/mediahandler/files/resourcefiles/api-design/Azure_API-Design_Guide_eBook.pdf
Clyde IO
ClydeIO is built with Node.js and uses Connect middleware for filters. Not in active development.
Express Gateway
Express Gateway is based on Node.js. Open Source.
Kong
Kong is a dominant open source API gateway.In active development. Based on Nginx with OpenRESTY, implemented in Lua + Python(?). Has plugins to provide features such as authentication, logging, etc. Data stores required: Cassandra or Postgres
Kong CE vs Enterprise. Kong CE only offers admin REST APIs, but open-source dashboards are available:
Plugins:
KrakenD
https://github.com/devopsfaith/krakend
Tyk
Tyk is a second major open source API gateway after Kong. Docs.
Datastore: MongoDB, Redis
Comparison
How to Choose the Right API Gateway
Kong vs Tyk - data presented heavily disputed.