[HN Gopher] Apache Apisix: Open-Source API Gateway and API Manag... ___________________________________________________________________ Apache Apisix: Open-Source API Gateway and API Management Platform Author : jjzhiyuan Score : 74 points Date : 2022-09-15 16:23 UTC (6 hours ago) (HTM) web link (apisix.apache.org) (TXT) w3m dump (apisix.apache.org) | pachico wrote: | Anybody has any idea about how this compares to Kong (what I've | been using for years)? | s1k3s wrote: | I have no experience with any of these but maybe this helps: | https://apisix.apache.org/blog/2022/07/30/why-we-need-apache... | samsk wrote: | Nice, thanks for sharing. It seems like an improved Kong, | using the good parts of it, like Nginx and Lua. It makes me | want to use it instead of the usual Kong, in next project. | pachico wrote: | Lua doesn't make it easy to create your own plugins at all. | Kong guys themselves tried to offer a good use experience | for this but failed more than once. | pachico wrote: | Also, it's not true that you need a database to run Kong. | You can make it run with a declarative config. | matt-p wrote: | What is the main benefit to running a gateway? Auth should | already be handled by the api and adding things like rate | limiting, ip address filtering ,caching and so on are | ridiculously trivial.. | VWWHFSfQ wrote: | Most of the time an "API Gateway" provides nothing. Usually | this kind of service is just looking at the request path and | maybe the Authorization header. In general it's just a useless | hop in the TCP connection chain from the client to the server. | zedpm wrote: | While you _can_ tack all of those things on to your API, many | people (myself included) prefer to separate those concerns. A | dedicated API Gateway can prevent a lot of additional load from | hitting the backend services. A gateway can also be a nice | abstraction of the public interface from the underlying | service(s). | Proven wrote: | I was reluctant to click on the link expecting another Java | project, but it seems to be based on Go. Refreshing. Maybe I'll | give it a try. | twsted wrote: | Mostly Lua, it seems. | haolez wrote: | For my use case, this would have to be incredibly awesome for it | to justify self-hosting such a complex and critical system. My | current go-to solutions are AWS API Gateway, Azure API Manager | and Apigee. | pachico wrote: | I share your concern about managing solutions. I only know AWS | API gateway but I can tell you the features it offers are very | limited compare to Foss solutions | staticassertion wrote: | I can't find the code. My biggest problem with Envoy is it's in | C++, what's this written in? | 0x457 wrote: | This is based on OpenResty, so it's Nginx (C) + LutJit. | However, it supports external plugins (any language) and WASM | plugins. | staticassertion wrote: | Bummer, pass. | yvan wrote: | https://github.com/apache/apisix | | Looks like mostly Lua because it based on OpenResty | coolgoose wrote: | I had to investigate a bit various options and settled on krakend | mostly since it's simple and easy to write custom Middleware. | splix wrote: | What is the advantage of using this compared to plain Nginx or | Envoy? Is it just static vs. dynamic config for routing? | e1g wrote: | "envoy" is another popular option and they are building a gateway | solution for API/inbound traffic | https://github.com/envoyproxy/gateway | rektide wrote: | OT but are any ingress/gateway systems using uring yet? | | Really enjoyed reading CloudFlare's justification for wrtiting | Pingora gateway recently[1], a similar-ish system. Im interested | to see what systems tech (what system calls) it ends up using. | | There's a ton of really great ingress/gateway tech out there. | Kubernetes has a sublist that's pretty long[2]. There's a good | comparison matrix[3] I ran into & it immediately made me very | interested in APISIX ( _lots_ of box ticking). I think at one | point I 'd also run into a benchmark somewhere & they were quite | performant, top tier. Would be interested to know more about | tbeir chosen architecture & what if any performance optimizations | they have planned/roadmapped/are-thinking-about. | | [1] https://blog.cloudflare.com/how-we-built-pingora-the- | proxy-t... https://news.ycombinator.com/item?id=32836661 | (362points, 1d ago, 92comments) | | [2] https://kubernetes.io/docs/concepts/services- | networking/ingr... | | [3] https://kubedex.com/ingress/ | colonelpopcorn wrote: | I was trying to find a simple API gateway I could run as a | single docker container on a single host. I ended up using a | node-red workflow instead, because I was unable to get any of | the options available to me working behind Traefik as my proxy. | I tried APIMan first, then APISIX, then API Umbrella (used and | developed by US government agency, apparently), and finally | Kong. I got the closest with Kong, but decided to just give | node-red a try and it worked like a charm as a proxy for | another API. | nijave wrote: | You can run envoy pretty easily like that but the config can | be a bit heavy (imo) unless you really want to read through | the docs | | Here's an example (top Google result) | https://amalaruja.medium.com/basic-http-routing- | strategies-w... | zcmack wrote: | doesn't traefik provide much of the functionality you'd want | from an api gateway? ___________________________________________________________________ (page generated 2022-09-15 23:00 UTC)