apisix/doc
罗泽轩 5a67fc382e
docs: improve the plugin-develop doc (#3125)
Co-authored-by: John Bampton <jbampton@users.noreply.github.com>
2020-12-27 09:30:01 +08:00
..
examples doc(hmac-auth): generate signature should be more detailed (#2599) 2020-11-03 16:40:33 +08:00
images chore(doc): add aws doc (#2567) 2020-11-19 16:30:48 +08:00
json plugin(prometheus): update json file for grafana dashboard (#2143) 2020-09-07 08:58:55 +08:00
plugins feat: Implement traffic splitting plugin (#2935) 2020-12-25 15:53:00 +08:00
zh-cn docs: improve the plugin-develop doc (#3125) 2020-12-27 09:30:01 +08:00
admin-api.md change: remove k8s_deployment_info (#3098) 2020-12-22 22:28:47 +08:00
apisix-plugin-design.graffle doc: exported balancer phase for plugin. 2019-07-24 11:09:24 +08:00
architecture-design.md change: remove k8s_deployment_info (#3098) 2020-12-22 22:28:47 +08:00
aws.md docs: lint Markdown for multiple consecutive blank lines (#3047) 2020-12-17 22:25:30 +08:00
batch-processor.md doc: fix some doc styles by markdownlint (#1460) 2020-04-16 19:21:46 +08:00
benchmark.md Revert "refactor: separate admin and proxy port in default config (#2802)" (#2871) 2020-11-28 19:05:14 +08:00
control-api.md feat: expose schema via control API (#3092) 2020-12-23 16:40:19 +08:00
customize-nginx-configuration.md feat: support include other nginx config (#2803) 2020-11-25 19:23:31 +08:00
debug-function.md feat: How to distinguish whether the 5xx status code (eg 500) comes from upstream or apisix (#2817) 2020-11-27 18:33:02 +08:00
discovery.md docs: lint Markdown for multiple consecutive blank lines (#3047) 2020-12-17 22:25:30 +08:00
getting-started.md Revert "refactor: separate admin and proxy port in default config (#2802)" (#2871) 2020-11-28 19:05:14 +08:00
grpc-proxy.md Revert "refactor: separate admin and proxy port in default config (#2802)" (#2871) 2020-11-28 19:05:14 +08:00
health-check.md Revert "refactor: separate admin and proxy port in default config (#2802)" (#2871) 2020-11-28 19:05:14 +08:00
how-to-build.md chore: spelling (#3012) 2020-12-13 00:04:48 +08:00
https.md Revert "refactor: separate admin and proxy port in default config (#2802)" (#2871) 2020-11-28 19:05:14 +08:00
install-dependencies.md docs: lint Markdown for multiple consecutive blank lines (#3047) 2020-12-17 22:25:30 +08:00
mtls.md feat: Support admin API authentication with SSL certificates (#1747) 2020-07-21 11:41:11 +08:00
plugin-develop.md docs: improve the plugin-develop doc (#3125) 2020-12-27 09:30:01 +08:00
plugin-interceptors.md Revert "refactor: separate admin and proxy port in default config (#2802)" (#2871) 2020-11-28 19:05:14 +08:00
plugins.md Revert "refactor: separate admin and proxy port in default config (#2802)" (#2871) 2020-11-28 19:05:14 +08:00
powered-by.md docs: lint Markdown for multiple consecutive blank lines (#3047) 2020-12-17 22:25:30 +08:00
profile.md doc: fix some doc styles for files in doc/ (#1475) 2020-04-20 09:07:42 +08:00
README.md feat: Implement traffic splitting plugin (#2935) 2020-12-25 15:53:00 +08:00
router-radixtree.md feat: route accroding to the graphql attributes (#2964) 2020-12-10 15:51:00 +08:00
stand-alone.md docs: lint Markdown for multiple consecutive blank lines (#3047) 2020-12-17 22:25:30 +08:00
stream-proxy.md Revert "refactor: separate admin and proxy port in default config (#2802)" (#2871) 2020-11-28 19:05:14 +08:00

Reference Documentation

Plugins

General

  • batch-requests: Allow you send multiple http api via http pipeline.
  • hot reload: Hot reload without reload service.
  • HTTPS/TLS: Dynamic load the SSL Certificate by Server Name Indication (SNI).
  • serverlessAllows to dynamically run Lua code at different phase in APISIX.
  • redirect: URI redirect.

Transformation

  • response-rewrite: Set customized response status code, body and header to the client.
  • proxy-rewrite: Rewrite upstream request information.
  • grpc-transcode: REST <--> gRPC transcoding.
  • fault-injection: The specified response body, response code, and response time can be returned, which provides processing capabilities in different failure scenarios, such as service failure, service overload, and high service delay.

Authentication

  • key-auth: User authentication based on Key Authentication.
  • JWT-auth: User authentication based on JWT (JSON Web Tokens) Authentication.
  • basic-auth: User authentication based on Basic Authentication.
  • authz-keycloak: Authorization with Keycloak Identity Server.
  • wolf-rbac User Authentication and Authorization based on RBAC.
  • openid-connect

Security

Traffic

  • limit-req: Request rate limiting and adjustment based on the "leaky bucket" method.
  • limit-conn: Limit request concurrency (or concurrent connections).
  • limit-count: Rate limiting based on a "fixed window" implementation.
  • proxy-cache: Provides the ability to cache upstream response data.
  • request-validation: Validates requests before forwarding to upstream.
  • proxy-mirror: Provides the ability to mirror client requests.
  • api-breaker: Circuit Breaker for API that stops requests forwarding to upstream in case of unhealthy state.
  • traffic-split: Allows users to incrementally direct percentages of traffic between various upstreams.

Monitoring

  • prometheus: Expose metrics related to APISIX and proxied upstream services in Prometheus exposition format, which can be scraped by a Prometheus Server.
  • OpenTracing: Supports Zikpin and Apache SkyWalking.
  • Skywalking: Supports Apache SkyWalking.

Loggers

Deploy

AWS

The recommended approach is to deploy APISIX with AWS CDK on AWS Fargate which helps you decouple the APISIX layer and the upstream layer on top of a fully-managed and secure serverless container compute environment with autoscaling capabilities.

Kubernetes

See this guide and learn how to deploy apisix in Kubernetes.