Apache APISIX — Cloud Native High-Performance API Gateway
Apache APISIX is a dynamic, real-time, high-performance API gateway built on NGINX and etcd, offering rich traffic management with a large plugin ecosystem and sub-millisecond routing updates.
Instalación con revisión previa
Este activo requiere revisión. El prompt copiado pide dry-run, muestra escrituras y continúa solo tras confirmación.
npx -y tokrepo@latest install aa6e7a65-38ce-11f1-9bc6-00163e2b0d79 --target codexPrimero dry-run, confirma las escrituras y luego ejecuta este comando.
What it is
Apache APISIX is a dynamic, real-time, high-performance API gateway built on NGINX and etcd. It provides rich traffic management features including load balancing, rate limiting, authentication, and observability through a large plugin ecosystem. Routes and plugins update in sub-millisecond time without server restarts.
It is designed for platform teams and API developers who need a production-grade gateway with dynamic configuration, multi-protocol support (HTTP, gRPC, WebSocket, MQTT), and extensibility via Lua or external plugins.
How it saves time or tokens
Traditional gateways require config file edits and process reloads to apply routing changes. APISIX stores all configuration in etcd and pushes updates to NGINX workers in real time. Adding a new route, enabling rate limiting, or switching upstream targets happens through an admin API call without downtime. The plugin marketplace covers common needs -- JWT auth, CORS, Prometheus metrics, fault injection -- so you rarely write custom code.
How to use
- Start APISIX with Docker Compose.
git clone https://github.com/apache/apisix-docker
cd apisix-docker/example
docker compose -p apisix up -d
- Create a route via the admin API.
curl -i http://127.0.0.1:9180/apisix/admin/routes/1 \
-H 'X-API-KEY: edd1c9f034335f136f87ad84b625c8f1' \
-X PUT -d '{
"uri": "/get",
"upstream": { "type": "roundrobin", "nodes": {"httpbin.org:80": 1} }
}'
- Test the route.
curl http://127.0.0.1:9080/get
Example
Adding rate limiting to a route:
curl http://127.0.0.1:9180/apisix/admin/routes/1 \
-H 'X-API-KEY: edd1c9f034335f136f87ad84b625c8f1' \
-X PATCH -d '{
"plugins": {
"limit-req": {
"rate": 10,
"burst": 5,
"key_type": "var",
"key": "remote_addr",
"rejected_code": 429
}
}
}'
The rate limit takes effect immediately without restarting the gateway.
Related on TokRepo
- DevOps tools -- Infrastructure tools for API management and deployment.
- Monitoring tools -- Observability plugins that integrate with APISIX.
Common pitfalls
- The default admin API key is publicly known. Change it immediately in production by editing
conf/config.yaml. - etcd is a required dependency. If etcd becomes unavailable, APISIX continues serving with cached config but cannot accept new route changes.
- Custom Lua plugins run inside the NGINX worker process. CPU-intensive plugins can block request handling. Use external plugin runners for heavy computation.
Preguntas frecuentes
Both are NGINX-based API gateways. APISIX uses etcd for configuration storage (sub-millisecond updates), while Kong uses PostgreSQL or Cassandra (slower propagation). APISIX is an Apache Software Foundation project; Kong is backed by Kong Inc. with both open-source and enterprise tiers.
Yes. APISIX can proxy gRPC traffic, perform gRPC-to-HTTP transcoding, and apply plugins (auth, rate limiting) to gRPC services the same way it handles HTTP routes.
Yes. Plugins can be written in Lua (runs inside NGINX), or as external processes in Python, Go, or Java using the plugin runner protocol. Lua plugins have the lowest latency; external plugins offer language flexibility.
Yes. APISIX is open source under the Apache 2.0 license. There is no paid tier from the Apache project itself. Some vendors offer commercial support and management dashboards.
The APISIX Dashboard is an optional web UI for managing routes, upstreams, and plugins visually. It communicates with APISIX through the admin API and is distributed as a separate Docker image.
Referencias (3)
- Apache APISIX GitHub— Apache APISIX is built on NGINX and etcd with dynamic routing
- APISIX Documentation— Sub-millisecond routing updates without restarts
- ASF Projects— Apache Software Foundation top-level project
Relacionados en TokRepo
Discusión
Activos relacionados
Apache Pulsar — Cloud-Native Distributed Messaging and Streaming
Apache Pulsar is a cloud-native distributed messaging and streaming platform. It combines the best of traditional messaging (like RabbitMQ) with streaming (like Kafka) — providing multi-tenancy, geo-replication, and tiered storage in a single system.
Apache SeaTunnel — High-Performance Data Integration Engine
Fast, distributed, cloud-native data integration tool for batch and streaming data synchronization across 100+ sources and sinks.
Apache ShenYu — High-Performance Extensible API Gateway
Apache ShenYu is a Java-native API gateway with a plugin-based architecture supporting HTTP, gRPC, WebSocket, MQTT, and Dubbo protocols for microservice traffic management.
Easegress — Cloud-Native Traffic Orchestration System
Easegress is a high-performance, cloud-native traffic orchestration platform written in Go that provides API gateway, load balancing, service mesh sidecar, and pipeline-based request processing with built-in resilience patterns.