DEV Community

Cover image for Apache APISIX Plugins Orchestration Overview
Bobur Umurzokov for Apache APISIX

Posted on

Apache APISIX Plugins Orchestration Overview

Currently, Apache APISIX API Gateway provides more than 50 built-in plugins broken down into several categories to meet the common usage scenarios. It covers authentication, security, traffic control, serverless, observability, and many more.

Problem 1

Plugins are unable to meet all the needs of the enterprise because each company has some unique needs. So, we often need to do some custom development of existing plugins to meet our business requirements. This is an actual problem because plugin development still requires more skills like in the specific programming language. For plugin development, different open-source projects have different solutions.

Problem 2

Sometimes your service requires you to use many plugins together. The problem now is that the plug-ins do not share context and cannot cooperate in all other API gateways that have been open source so far.

Plugins Orchestration

In the following video tutorial, you will learn with low-code Apache APISIX plugin orchestration capability, how the above-mentioned problems can be solved and can help businesses to reduce the development cost of the new API Gateway Plugin to almost zero. We can easily orchestrate all existing plugins in a “drag-and-drop” way on the UI dashboard. You can also combine different plugins by using conditional components to create new “plugins”.

Plugin Orchestration in action

As you watch the video tutorial, the scenario was demonstrated where we decide the subsequent API request processing logic based on the processing result of previous plugin.

  • Our API receives requests only from whitelisted IPs with the ip-restriction plugin control.
  • If the IP is in the whitelist, limit-count takes over and limits the number of requests 2 within 60 seconds time window.
  • If new request comes from different IP range, the plugin returns a 403 (requested resource is forbidden) HTTP status code.

After putting all building blocks to the drawing board (plugins, condition), we will have a diagram similar to below:

Plugin orchestration digram

To learn more⤵️

➔ Read Overview of Apache APISIX API Gateway Plugins

➔ Read API Observability with Apache APISIX Plugins

➔ Read Centralized Authentication with Apache APISIX Plugins

➔ Watch Video Tutorial Getting Started with Apache APISIX

➔ Watch Video Tutorial Getting Started with Apache APISIX Dashboard

Discussion (0)