apisix README

The project's README from github.com/apache/apisix. As one markdown file: README.md.

Apache APISIX API Gateway | AI Gateway

APISIX logo

Build Status License GitHub release GitHub stars Docker Pulls Commit activity GitHub issues Slack

Apache APISIX is a dynamic, real-time, high-performance API Gateway.

APISIX API Gateway provides rich traffic management features such as load balancing, dynamic upstream, canary release, circuit breaking, authentication, observability, and more. You can use it to handle traditional north-south traffic, as well as east-west traffic between services. It can also be used as a Kubernetes ingress controller.

Table of Contents

Why APISIX

APISIX is built on top of NGINX and etcd. Compared with traditional API gateways, APISIX has dynamic routing and hot-loading of plugins, which is especially suitable for API management under a microservice architecture.

The technical architecture of Apache APISIX:

Technical architecture of Apache APISIX

AI Gateway

APISIX can serve as an AI Gateway through its flexible plugin system, providing:

APISIX also provides the mcp-bridge plugin to seamlessly convert stdio-based MCP servers to scalable HTTP SSE services.

Get Started

Install and run APISIX with a single command using the quickstart script (requires Docker):

curl -sL https://run.api7.ai/apisix/quickstart | sh

This starts APISIX (listening on port 9080) together with its etcd configuration store. Verify it is running:

curl "http://127.0.0.1:9080" --head | grep Server

Create your first route via the Admin API (port 9180) to proxy requests to an upstream service:

curl -i "http://127.0.0.1:9180/apisix/admin/routes/1" -X PUT -d '
{
  "uri": "/get",
  "upstream": {
    "type": "roundrobin",
    "nodes": {
      "httpbin.org:80": 1
    }
  }
}'

Send a request through APISIX to confirm the route works:

curl "http://127.0.0.1:9080/get"

To learn more, follow the Getting Started guide and the installation documentation for other deployment methods. To extend APISIX, see the plugin development guide, the plugin concept, and the REST Admin API reference.

For more documents, please refer to the Apache APISIX Documentation site.

Features

You can use APISIX API Gateway as a traffic entrance to process all business data, including dynamic routing, dynamic upstream, dynamic certificates, A/B testing, canary release, blue-green deployment, limit rate, defense against malicious attacks, metrics, monitoring alarms, service observability, service governance, etc.

Benchmark

Using AWS's eight-core server, APISIX's QPS reaches 140,000 with a latency of only 0.2 ms.

Benchmark script has been open sourced, welcome to try and contribute.

APISIX also works perfectly in AWS graviton3 C7g.

Community

User Stories

Who Uses APISIX API Gateway?

A wide variety of companies and organizations use APISIX API Gateway for research, production and commercial product, below are some of them:

Logos

Acknowledgments

Inspired by Kong and Orange.

License

Apache 2.0 License

apisix (apache/apisix)

Searching Database…

17.2K ·GitHub
Что это такое?Apache APISIX — это шлюз с открытым исходным кодом: динамичный, работающий в реальном времени и высокопроизводительный API-шлюз, который может работать и как AI-шлюз. Он занимается управлением трафиком — балансировкой нагрузки, канареечными релизами, автоматическим отключением при сбоях (circuit breaking), аутентификацией и наблюдаемостью — как для трафика снаружи внутрь и обратно, так и между внутренними сервисами.
Это сервис, который я разворачиваю перед своими приложениями, или библиотека, которую я подключаю в код?Это отдельный сервис-шлюз, который вы разворачиваете: он построен на NGINX с etcd в качестве хранилища конфигурации, а управляется на ходу через REST Admin API.
Как быстро его попробовать?Запустите скрипт быстрого старта (нужен Docker): он поднимет APISIX на порту 9080 вместе с хранилищем конфигурации etcd. Затем создайте первый маршрут через Admin API на порту 9180 и отправьте через него тестовый запрос.
etcd нужно поднимать отдельно, или он идёт в комплекте?Скрипт быстрого старта поднимает etcd вместе с APISIX. В продакшене можно указать несколько адресов etcd в одном кластере для высокой доступности или использовать автономный режим, где правила маршрутов читаются из локального YAML-файла — это удобно для Kubernetes.
Admin API по умолчанию закрыт от посторонних?Да — по умолчанию он принимает запросы только с 127.0.0.1; чтобы разрешить другие IP, измените поле allowadmin в conf/config.yaml, а вызывающие проходят аутентификацию по ключу.
Чем он отличается от традиционных API-шлюзов?Динамической маршрутизацией и горячей загрузкой плагинов без перезапуска — по словам авторов проекта, это делает его особенно подходящим для управления API в микросервисной архитектуре. Проект вдохновлён Kong и Orange.
Что он даёт для эксплуатации и мониторинга?Метрики Prometheus, трассировку Zipkin и APM Apache SkyWalking, выгрузку логов доступа в Kafka, ClickHouse, Elasticsearch, Datadog, Splunk и другие системы, а также дашборд и узлы без состояния, которые объединяются в кластер через etcd.
What are similar projects?kong, tyk, busbar, istio, tengine, coredns, evenfire, ingress-nginx
Creator
apache
Size
47.7 MB
Stars
17.2K
Age
7y
Commits · 90 Days