Skip to content

Adding API gateway 1.2.0 performance test results - #432

Open
Milanka00 wants to merge 1 commit into
wso2:mainfrom
Milanka00:main
Open

Adding API gateway 1.2.0 performance test results#432
Milanka00 wants to merge 1 commit into
wso2:mainfrom
Milanka00:main

Conversation

@Milanka00

Copy link
Copy Markdown
Contributor

Purpose

This PR adds the performance test results for API Platform Gateway v1.2.0 from a Kubernetes deployment provisioned on AWS EKS.

The results are presented using the same reporting approach as the previous performance reports, with the charts updated to reflect the latest benchmark results.

Checklist

  • Verified that llms.txt (located at en/docs/llms.txt) is updated for AI readiness content.
  • Ensured meaningful alt text for images and that the information contained in an image also appears in text so the relevant info exists in the body of the document.
  • Added or updated frontmatter for the respective pages.

@coderabbitai

coderabbitai Bot commented Aug 11, 2026

Copy link
Copy Markdown

Review Change Stack

📝 Walkthrough

Walkthrough

The performance documentation now describes Amazon EKS deployment, revised concurrency and runtime settings, updated benchmark datasets, and versioned chart assets for two-CPU and four-CPU scenarios.

Changes

Performance documentation

Layer / File(s) Summary
Overview methodology and deployment
en/docs/api-gateway/{1.2.0,next}/performance/overview.md
The overview pages document EKS and EC2 component placement, revised test dimensions, gateway resource allocations, and router concurrency of 3 for the four-CPU scenario.
Two-CPU benchmark results
en/docs/api-gateway/{1.2.0,next}/performance/gateway-runtime-with-two-cpus.md
The two-CPU pages document EKS pod deployment, set GOMAXPROCS to 1, use versioned charts for 100, 500, and 1000 users, and remove varying-payload results.
Four-CPU benchmark results
en/docs/api-gateway/{1.2.0,next}/performance/gateway-runtime-with-four-cpus.md
The four-CPU pages document EKS pod deployment, set router concurrency to 3 and GOMAXPROCS to 1, and use versioned charts for 100, 500, and 1000 users.

Estimated code review effort: 2 (Simple) | ~15 minutes

Possibly related PRs

  • wso2/docs-api-platform#415: Both PRs modify the API Gateway 1.2.0 performance documentation and related runtime benchmark pages.
🚥 Pre-merge checks | ✅ 4 | ❌ 1

❌ Failed checks (1 warning)

Check name Status Explanation Resolution
Description check ⚠️ Warning The description includes the purpose and checklist but omits most required sections, including goals, approach, release note, testing, security, and environment details. Complete the required template sections and mark each checklist item with the relevant verification status or explanation.
✅ Passed checks (4 passed)
Check name Status Explanation
Title check ✅ Passed The title clearly summarizes the main change: adding API Gateway v1.2.0 performance test results.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 10

🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Inline comments:
In `@en/docs/api-gateway/1.2.0/performance/gateway-runtime-with-four-cpus.md`:
- Line 52: Update the benchmark artifact references in this page so all linked
assets use the 1.2.0 dataset: add the missing /1.2.0/ segment to the
mediation-policy percentile image link and change the CSV link from
api-gateway-1.1.0-perf-test-results to its matching 1.2.0 artifact.

In `@en/docs/api-gateway/1.2.0/performance/gateway-runtime-with-two-cpus.md`:
- Line 25: Replace “requests/sec” with “requests per second” in the throughput
headings at
en/docs/api-gateway/1.2.0/performance/gateway-runtime-with-two-cpus.md:25-25,
en/docs/api-gateway/next/performance/gateway-runtime-with-two-cpus.md:25-25,
en/docs/api-gateway/1.2.0/performance/gateway-runtime-with-four-cpus.md:25-25,
and
en/docs/api-gateway/next/performance/gateway-runtime-with-four-cpus.md:25-25.
- Line 50: Keep all benchmark artifacts aligned with the 1.2.0 dataset. In
en/docs/api-gateway/1.2.0/performance/gateway-runtime-with-two-cpus.md (Line 50
anchor), en/docs/api-gateway/next/performance/gateway-runtime-with-two-cpus.md
(Line 50 sibling),
en/docs/api-gateway/1.2.0/performance/gateway-runtime-with-four-cpus.md (Line 52
sibling), and
en/docs/api-gateway/next/performance/gateway-runtime-with-four-cpus.md (Line 52
sibling), update the CSV links to target the 1.2.0 result set; additionally add
/1.2.0/ to the mediation-policy percentile asset links in both four-CPU pages.

In `@en/docs/api-gateway/1.2.0/performance/overview.md`:
- Line 3: Update the frontmatter description in
en/docs/api-gateway/1.2.0/performance/overview.md at lines 3-3 and
en/docs/api-gateway/next/performance/overview.md at lines 3-3 with the same
shortened description, keeping it under 158 characters and expanding Amazon
Elastic Kubernetes Service (EKS) at first use.
- Line 23: Update the Results paragraph in both
en/docs/api-gateway/1.2.0/performance/overview.md:23-23 and
en/docs/api-gateway/next/performance/overview.md:23-23 to describe tests with
100, 500, and 1000 concurrent users across two gateway configurations, removing
the outdated payload-size and two-concurrency-level descriptions.
- Line 36: Replace positional “below” image references in
en/docs/api-gateway/1.2.0/performance/overview.md:36 and
en/docs/api-gateway/next/performance/overview.md:36 with “The deployment diagram
shows...”. In
en/docs/api-gateway/1.2.0/performance/gateway-runtime-with-two-cpus.md:27,
en/docs/api-gateway/next/performance/gateway-runtime-with-two-cpus.md:27,
en/docs/api-gateway/1.2.0/performance/gateway-runtime-with-four-cpus.md:27, and
en/docs/api-gateway/next/performance/gateway-runtime-with-four-cpus.md:27, use
“The throughput chart shows...” instead.
- Line 18: Rewrite the performance methodology in active voice with short,
direct sentences. Update the referenced passages around the API evaluation, test
execution, configuration, deployment, and documentation so each states the
responsible actor, removes filler such as “As the name suggests,” and keeps each
sentence within 26 words.
- Line 38: Update every listed image in
en/docs/api-gateway/1.2.0/performance/overview.md:38-38,
en/docs/api-gateway/next/performance/overview.md:38-38, both
gateway-runtime-with-two-cpus.md files at lines 29-29, 40-40, and 50-50, and
both gateway-runtime-with-four-cpus.md files at lines 29-29, 41-41, and 52-52.
Shorten each alt text to 155 characters or fewer while preserving its subject,
and add the required 1x/2x srcset to every image.

In `@en/docs/api-gateway/next/performance/gateway-runtime-with-four-cpus.md`:
- Line 52: Update the benchmark artifact links in this performance report,
including the mediation-policy percentile image and the CSV link, to use the
matching 1.2.0 dataset. Preserve the existing link targets and formatting while
replacing the omitted or outdated 1.1.0 artifact references.

In `@en/docs/api-gateway/next/performance/overview.md`:
- Line 18: Rewrite the updated methodology in
en/docs/api-gateway/next/performance/overview.md using active voice, short
sentences, and explicit actors. Update the text at the referenced sections,
including the sentence around “The performance of the WSO2 API Platform
Gateway,” to remove passive constructions, split sentences exceeding 26 words,
and remove filler such as “As the name suggests.”
🪄 Autofix

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: ASSERTIVE

Plan: Pro Plus

Run ID: 270b2abf-c230-48a5-ae61-8849570f20b2

📥 Commits

Reviewing files that changed from the base of the PR and between 0c4fdbb and 25fb578.

⛔ Files ignored due to path filters (9)
  • en/docs/assets/img/api-gateway/performance/1.2.0/deployment-used-for-test.png is excluded by !**/*.png
  • en/docs/assets/img/api-gateway/performance/1.2.0/four-core-AP- with-8-routes-Response-Time-vs-Concurrent-Users.svg is excluded by !**/*.svg
  • en/docs/assets/img/api-gateway/performance/1.2.0/four-core-API-with-8-routes-Mediation-Policy-Response-Time-vs-Concurrent-Users.svg is excluded by !**/*.svg
  • en/docs/assets/img/api-gateway/performance/1.2.0/four-core-Average-Response-Time-vs-Concurrent-Users.svg is excluded by !**/*.svg
  • en/docs/assets/img/api-gateway/performance/1.2.0/four-core-Throughput-vs-Concurrent-Users.svg is excluded by !**/*.svg
  • en/docs/assets/img/api-gateway/performance/1.2.0/two-core-API-with-8-routes-Mediation-policy-Percentile-Response-Time-vs-Concurrent-Users.svg is excluded by !**/*.svg
  • en/docs/assets/img/api-gateway/performance/1.2.0/two-core-api-with-8-routes-Percentile-Response-Time-vs-Concurrent-Users.svg is excluded by !**/*.svg
  • en/docs/assets/img/api-gateway/performance/1.2.0/two-core-average-response-time-vs-concurrent-users.svg is excluded by !**/*.svg
  • en/docs/assets/img/api-gateway/performance/1.2.0/two-core-throughput-vs-concurrent-users.svg is excluded by !**/*.svg
📒 Files selected for processing (6)
  • en/docs/api-gateway/1.2.0/performance/gateway-runtime-with-four-cpus.md
  • en/docs/api-gateway/1.2.0/performance/gateway-runtime-with-two-cpus.md
  • en/docs/api-gateway/1.2.0/performance/overview.md
  • en/docs/api-gateway/next/performance/gateway-runtime-with-four-cpus.md
  • en/docs/api-gateway/next/performance/gateway-runtime-with-two-cpus.md
  • en/docs/api-gateway/next/performance/overview.md

The graphs below show the 90th, 95th, and 99th percentile response times at 0 ms backend delay. Percentile values indicate the response time below which that percentage of requests completed, for example, the 99th percentile is the response time exceeded by only 1% of requests.

![Line chart of 90th, 95th, and 99th percentile response times in milliseconds versus concurrent users for the API without policies on a four-CPU gateway runtime](../../../assets/img/api-gateway/performance/four-core-AP-%20with-8-routes-Response-Time-vs-Concurrent-Users.svg){ width="900" }
![Line chart of 90th, 95th, and 99th percentile response times in milliseconds versus concurrent users for the API without policies on a four-CPU gateway runtime](../../../assets/img/api-gateway/performance/1.2.0/four-core-AP-%20with-8-routes-Response-Time-vs-Concurrent-Users.svg){ width="900" }

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🗄️ Data Integrity & Integration | 🟠 Major | ⚡ Quick win

Keep all linked benchmark artifacts on the 1.2.0 dataset.

The mediation-policy percentile image at Line 59 omits /1.2.0/. The CSV link at Line 65 still targets api-gateway-1.1.0-perf-test-results. Update both links to the matching 1.2.0 artifacts.

The PR objective identifies this page as a 1.2.0 benchmark report.

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@en/docs/api-gateway/1.2.0/performance/gateway-runtime-with-four-cpus.md` at
line 52, Update the benchmark artifact references in this page so all linked
assets use the 1.2.0 dataset: add the missing /1.2.0/ segment to the
mediation-policy percentile image link and change the CSV link from
api-gateway-1.1.0-perf-test-results to its matching 1.2.0 artifact.

| Gateway Runtime | 2 | 2 GB | 2 | 2 |
| Gateway Runtime | 2 | 2 GB | 2 | 1 |

## Throughput (requests/sec) vs. concurrent users

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

📐 Maintainability & Code Quality | 🟡 Minor | ⚡ Quick win

Use plain wording for throughput units.

Each heading uses the undefined abbreviation requests/sec.

  • en/docs/api-gateway/1.2.0/performance/gateway-runtime-with-two-cpus.md#L25-L25: replace it with requests per second.
  • en/docs/api-gateway/next/performance/gateway-runtime-with-two-cpus.md#L25-L25: apply the same correction.
  • en/docs/api-gateway/1.2.0/performance/gateway-runtime-with-four-cpus.md#L25-L25: apply the same correction.
  • en/docs/api-gateway/next/performance/gateway-runtime-with-four-cpus.md#L25-L25: apply the same correction.
    As per coding guidelines, define abbreviations and use plain language.
📍 Affects 4 files
  • en/docs/api-gateway/1.2.0/performance/gateway-runtime-with-two-cpus.md#L25-L25 (this comment)
  • en/docs/api-gateway/next/performance/gateway-runtime-with-two-cpus.md#L25-L25
  • en/docs/api-gateway/1.2.0/performance/gateway-runtime-with-four-cpus.md#L25-L25
  • en/docs/api-gateway/next/performance/gateway-runtime-with-four-cpus.md#L25-L25
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@en/docs/api-gateway/1.2.0/performance/gateway-runtime-with-two-cpus.md` at
line 25, Replace “requests/sec” with “requests per second” in the throughput
headings at
en/docs/api-gateway/1.2.0/performance/gateway-runtime-with-two-cpus.md:25-25,
en/docs/api-gateway/next/performance/gateway-runtime-with-two-cpus.md:25-25,
en/docs/api-gateway/1.2.0/performance/gateway-runtime-with-four-cpus.md:25-25,
and
en/docs/api-gateway/next/performance/gateway-runtime-with-four-cpus.md:25-25.

Source: Coding guidelines

The graphs below show the 90th, 95th, and 99th percentile response times at 0 ms backend delay. Percentile values indicate the response time below which that percentage of requests completed, for example, the 99th percentile is the response time exceeded by only 1% of requests.

![Line chart of 90th, 95th, and 99th percentile response times in milliseconds versus concurrent users for the API without policies on a two-CPU gateway runtime](../../../assets/img/api-gateway/performance/two-core-api-with-8-routes-Percentile-Response-Time-vs-Concurrent-Users.svg){ width="900" }
![Line chart of 90th, 95th, and 99th percentile response times in milliseconds versus concurrent users for the API without policies on a two-CPU gateway runtime](../../../assets/img/api-gateway/performance/1.2.0/two-core-api-with-8-routes-Percentile-Response-Time-vs-Concurrent-Users.svg){ width="900" }

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🗄️ Data Integrity & Integration | 🟠 Major | ⚡ Quick win

Keep every benchmark artifact on the 1.2.0 dataset.

The result pages mix 1.2.0 chart assets with older or unversioned result artifacts.

  • en/docs/api-gateway/1.2.0/performance/gateway-runtime-with-two-cpus.md#L50-L50: update the CSV target at Line 65 from the 1.1.0 result set.
  • en/docs/api-gateway/next/performance/gateway-runtime-with-two-cpus.md#L50-L50: apply the same CSV correction.
  • en/docs/api-gateway/1.2.0/performance/gateway-runtime-with-four-cpus.md#L52-L52: add /1.2.0/ to the mediation-policy percentile asset and update the CSV target.
  • en/docs/api-gateway/next/performance/gateway-runtime-with-four-cpus.md#L52-L52: apply the same corrections.
    The PR objective identifies these pages as 1.2.0 benchmark reports.
📍 Affects 4 files
  • en/docs/api-gateway/1.2.0/performance/gateway-runtime-with-two-cpus.md#L50-L50 (this comment)
  • en/docs/api-gateway/next/performance/gateway-runtime-with-two-cpus.md#L50-L50
  • en/docs/api-gateway/1.2.0/performance/gateway-runtime-with-four-cpus.md#L52-L52
  • en/docs/api-gateway/next/performance/gateway-runtime-with-four-cpus.md#L52-L52
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@en/docs/api-gateway/1.2.0/performance/gateway-runtime-with-two-cpus.md` at
line 50, Keep all benchmark artifacts aligned with the 1.2.0 dataset. In
en/docs/api-gateway/1.2.0/performance/gateway-runtime-with-two-cpus.md (Line 50
anchor), en/docs/api-gateway/next/performance/gateway-runtime-with-two-cpus.md
(Line 50 sibling),
en/docs/api-gateway/1.2.0/performance/gateway-runtime-with-four-cpus.md (Line 52
sibling), and
en/docs/api-gateway/next/performance/gateway-runtime-with-four-cpus.md (Line 52
sibling), update the CSV links to target the 1.2.0 result set; additionally add
/1.2.0/ to the mediation-policy percentile asset links in both four-CPU pages.

---
title: "API Platform Gateway Performance"
description: "Review WSO2 API Platform Gateway performance test methodology, deployment architecture, metrics, and benchmark results for two-CPU and four-CPU gateway runtime configurations."
description: "Review WSO2 API Platform Gateway performance test methodology, Amazon EKS deployment architecture, metrics, and benchmark results for two-CPU and four-CPU gateway runtime configurations."

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

📐 Maintainability & Code Quality | 🟡 Minor | ⚡ Quick win

Use a compliant description in both overview pages.

Both descriptions exceed 158 characters and use EKS before expansion.

  • en/docs/api-gateway/1.2.0/performance/overview.md#L3-L3: shorten the description and define Amazon Elastic Kubernetes Service (EKS).
  • en/docs/api-gateway/next/performance/overview.md#L3-L3: apply the same compliant description.
    As per coding guidelines, frontmatter descriptions must be under 158 characters, and acronyms must be defined at first use.
📍 Affects 2 files
  • en/docs/api-gateway/1.2.0/performance/overview.md#L3-L3 (this comment)
  • en/docs/api-gateway/next/performance/overview.md#L3-L3
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@en/docs/api-gateway/1.2.0/performance/overview.md` at line 3, Update the
frontmatter description in en/docs/api-gateway/1.2.0/performance/overview.md at
lines 3-3 and en/docs/api-gateway/next/performance/overview.md at lines 3-3 with
the same shortened description, keeping it under 158 characters and expanding
Amazon Elastic Kubernetes Service (EKS) at first use.

Source: Coding guidelines

# API Platform Gateway Performance

The performance of the WSO2 API Platform Gateway was evaluated using the following APIs, both of which invoke a simple Netty HTTP Echo Service. As the name suggests, the Netty service echoes back any request it receives.
The performance of the WSO2 API Platform Gateway was evaluated using the following APIs, both of which invoke a simple Netty HTTP Echo Service running on the same Amazon EKS cluster as the gateway. As the name suggests, the Netty service echoes back any request it receives.

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

📐 Maintainability & Code Quality | 🟡 Minor | ⚡ Quick win

Rewrite the updated methodology in active voice and short sentences.

The changed text uses passive constructions such as was evaluated, were conducted, was configured, are deployed, and are documented. Line 18 also exceeds 26 words and includes the filler phrase As the name suggests. Split the content and state the actor directly.

As per coding guidelines, use active voice, concise sentences, and direct wording.

Also applies to: 23-23, 34-34, 49-49

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@en/docs/api-gateway/1.2.0/performance/overview.md` at line 18, Rewrite the
performance methodology in active voice with short, direct sentences. Update the
referenced passages around the API evaluation, test execution, configuration,
deployment, and documentation so each states the responsible actor, removes
filler such as “As the name suggests,” and keeps each sentence within 26 words.

Source: Coding guidelines

- **API with mediation policies**: An API configured with the same eight routes, with a Set Header policy applied to both the request and response flows.

The performance tests were conducted with 100, 500, 800, and 1000 concurrent users, where concurrent users represent multiple clients accessing the gateway simultaneously. To evaluate the impact of different message sizes, tests were performed using payload sizes of 50 B, 1 KiB, 10 KiB, and 100 KiB. The backend response delay was configured to 0 ms.
The performance tests were conducted with 100, 500, and 1000 concurrent users, where concurrent users represent multiple clients accessing the gateway simultaneously. The backend response delay was configured to 0 ms.

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🗄️ Data Integrity & Integration | 🟠 Major | ⚡ Quick win

Align both Results summaries with the revised test plan.

Both pages list three user counts but still describe payload sizes and two concurrency levels.

  • en/docs/api-gateway/1.2.0/performance/overview.md#L23-L23: rewrite the Results paragraph to describe 100, 500, and 1000 concurrent users and two gateway configurations.
  • en/docs/api-gateway/next/performance/overview.md#L23-L23: apply the same correction.
    The PR objective identifies this cohort as a 1.2.0 benchmark report with revised test dimensions.
📍 Affects 2 files
  • en/docs/api-gateway/1.2.0/performance/overview.md#L23-L23 (this comment)
  • en/docs/api-gateway/next/performance/overview.md#L23-L23
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@en/docs/api-gateway/1.2.0/performance/overview.md` at line 23, Update the
Results paragraph in both
en/docs/api-gateway/1.2.0/performance/overview.md:23-23 and
en/docs/api-gateway/next/performance/overview.md:23-23 to describe tests with
100, 500, and 1000 concurrent users across two gateway configurations, removing
the outdated payload-size and two-concurrency-level descriptions.


The WSO2 API Platform Gateway and Netty HTTP Backend are deployed on an Amazon Elastic Kubernetes Service (EKS) cluster. Apache JMeter client and servers run on separate Amazon EC2 instances outside the cluster.

The diagram below shows the deployment architecture used for the performance tests documented here.

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

📐 Maintainability & Code Quality | 🟡 Minor | ⚡ Quick win

Replace positional image references.

Each affected sentence uses below to identify an image.

  • en/docs/api-gateway/1.2.0/performance/overview.md#L36-L36: use The deployment diagram shows....
  • en/docs/api-gateway/next/performance/overview.md#L36-L36: apply the same wording.
  • en/docs/api-gateway/1.2.0/performance/gateway-runtime-with-two-cpus.md#L27-L27: use The throughput chart shows....
  • en/docs/api-gateway/next/performance/gateway-runtime-with-two-cpus.md#L27-L27: apply the same wording.
  • en/docs/api-gateway/1.2.0/performance/gateway-runtime-with-four-cpus.md#L27-L27: apply the same wording.
  • en/docs/api-gateway/next/performance/gateway-runtime-with-four-cpus.md#L27-L27: apply the same wording.
    As per coding guidelines, do not refer to images by position.
📍 Affects 6 files
  • en/docs/api-gateway/1.2.0/performance/overview.md#L36-L36 (this comment)
  • en/docs/api-gateway/next/performance/overview.md#L36-L36
  • en/docs/api-gateway/1.2.0/performance/gateway-runtime-with-two-cpus.md#L27-L27
  • en/docs/api-gateway/next/performance/gateway-runtime-with-two-cpus.md#L27-L27
  • en/docs/api-gateway/1.2.0/performance/gateway-runtime-with-four-cpus.md#L27-L27
  • en/docs/api-gateway/next/performance/gateway-runtime-with-four-cpus.md#L27-L27
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@en/docs/api-gateway/1.2.0/performance/overview.md` at line 36, Replace
positional “below” image references in
en/docs/api-gateway/1.2.0/performance/overview.md:36 and
en/docs/api-gateway/next/performance/overview.md:36 with “The deployment diagram
shows...”. In
en/docs/api-gateway/1.2.0/performance/gateway-runtime-with-two-cpus.md:27,
en/docs/api-gateway/next/performance/gateway-runtime-with-two-cpus.md:27,
en/docs/api-gateway/1.2.0/performance/gateway-runtime-with-four-cpus.md:27, and
en/docs/api-gateway/next/performance/gateway-runtime-with-four-cpus.md:27, use
“The throughput chart shows...” instead.

Source: Coding guidelines

The diagram below shows the deployment architecture used for the performance tests documented here.

![Performance test deployment architecture showing Apache JMeter client and servers, Netty HTTP backend, and WSO2 API Platform Gateway on separate EC2 instances connected in a test topology](../../../assets/img/api-gateway/performance/deployment-used-for-test.png){ width="900" }
![Performance test deployment architecture showing Apache JMeter client and servers on EC2 instances, with the WSO2 API Platform Gateway and Netty HTTP backend deployed on an Amazon EKS cluster](../../../assets/img/api-gateway/performance/1.2.0/deployment-used-for-test.png){ width="900" }

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

📐 Maintainability & Code Quality | 🟡 Minor | ⚡ Quick win

Apply the image markup rules to every changed image.

Each affected image has overly long alt text and lacks a 1x/2x srcset.

  • en/docs/api-gateway/1.2.0/performance/overview.md#L38-L38: shorten the deployment alt text and add the required srcset.
  • en/docs/api-gateway/next/performance/overview.md#L38-L38: apply the same correction.
  • en/docs/api-gateway/1.2.0/performance/gateway-runtime-with-two-cpus.md#L29-L29: shorten the throughput alt text and add srcset.
  • en/docs/api-gateway/1.2.0/performance/gateway-runtime-with-two-cpus.md#L40-L40: shorten the average-response-time alt text and add srcset.
  • en/docs/api-gateway/1.2.0/performance/gateway-runtime-with-two-cpus.md#L50-L50: shorten the percentile alt text and add srcset.
  • en/docs/api-gateway/next/performance/gateway-runtime-with-two-cpus.md#L29-L29: apply the throughput correction.
  • en/docs/api-gateway/next/performance/gateway-runtime-with-two-cpus.md#L40-L40: apply the average-response-time correction.
  • en/docs/api-gateway/next/performance/gateway-runtime-with-two-cpus.md#L50-L50: apply the percentile correction.
  • en/docs/api-gateway/1.2.0/performance/gateway-runtime-with-four-cpus.md#L29-L29: apply the throughput correction.
  • en/docs/api-gateway/1.2.0/performance/gateway-runtime-with-four-cpus.md#L41-L41: apply the average-response-time correction.
  • en/docs/api-gateway/1.2.0/performance/gateway-runtime-with-four-cpus.md#L52-L52: apply the percentile correction.
  • en/docs/api-gateway/next/performance/gateway-runtime-with-four-cpus.md#L29-L29: apply the throughput correction.
  • en/docs/api-gateway/next/performance/gateway-runtime-with-four-cpus.md#L41-L41: apply the average-response-time correction.
  • en/docs/api-gateway/next/performance/gateway-runtime-with-four-cpus.md#L52-L52: apply the percentile correction.
    As per coding guidelines, alt text must be at most 155 characters, and images must include a 1x/2x srcset. As per path instructions, apply these rules strictly to en/docs/**/*.md.
📍 Affects 6 files
  • en/docs/api-gateway/1.2.0/performance/overview.md#L38-L38 (this comment)
  • en/docs/api-gateway/next/performance/overview.md#L38-L38
  • en/docs/api-gateway/1.2.0/performance/gateway-runtime-with-two-cpus.md#L29-L29
  • en/docs/api-gateway/1.2.0/performance/gateway-runtime-with-two-cpus.md#L40-L40
  • en/docs/api-gateway/1.2.0/performance/gateway-runtime-with-two-cpus.md#L50-L50
  • en/docs/api-gateway/next/performance/gateway-runtime-with-two-cpus.md#L29-L29
  • en/docs/api-gateway/next/performance/gateway-runtime-with-two-cpus.md#L40-L40
  • en/docs/api-gateway/next/performance/gateway-runtime-with-two-cpus.md#L50-L50
  • en/docs/api-gateway/1.2.0/performance/gateway-runtime-with-four-cpus.md#L29-L29
  • en/docs/api-gateway/1.2.0/performance/gateway-runtime-with-four-cpus.md#L41-L41
  • en/docs/api-gateway/1.2.0/performance/gateway-runtime-with-four-cpus.md#L52-L52
  • en/docs/api-gateway/next/performance/gateway-runtime-with-four-cpus.md#L29-L29
  • en/docs/api-gateway/next/performance/gateway-runtime-with-four-cpus.md#L41-L41
  • en/docs/api-gateway/next/performance/gateway-runtime-with-four-cpus.md#L52-L52
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@en/docs/api-gateway/1.2.0/performance/overview.md` at line 38, Update every
listed image in en/docs/api-gateway/1.2.0/performance/overview.md:38-38,
en/docs/api-gateway/next/performance/overview.md:38-38, both
gateway-runtime-with-two-cpus.md files at lines 29-29, 40-40, and 50-50, and
both gateway-runtime-with-four-cpus.md files at lines 29-29, 41-41, and 52-52.
Shorten each alt text to 155 characters or fewer while preserving its subject,
and add the required 1x/2x srcset to every image.

Sources: Coding guidelines, Path instructions

The graphs below show the 90th, 95th, and 99th percentile response times at 0 ms backend delay. Percentile values indicate the response time below which that percentage of requests completed, for example, the 99th percentile is the response time exceeded by only 1% of requests.

![Line chart of 90th, 95th, and 99th percentile response times in milliseconds versus concurrent users for the API without policies on a four-CPU gateway runtime](../../../assets/img/api-gateway/performance/four-core-AP-%20with-8-routes-Response-Time-vs-Concurrent-Users.svg){ width="900" }
![Line chart of 90th, 95th, and 99th percentile response times in milliseconds versus concurrent users for the API without policies on a four-CPU gateway runtime](../../../assets/img/api-gateway/performance/1.2.0/four-core-AP-%20with-8-routes-Response-Time-vs-Concurrent-Users.svg){ width="900" }

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🗄️ Data Integrity & Integration | 🟠 Major | ⚡ Quick win

Keep all linked benchmark artifacts on the 1.2.0 dataset.

The mediation-policy percentile image at Line 59 omits /1.2.0/. The CSV link at Line 65 still targets api-gateway-1.1.0-perf-test-results. Update both links to the matching 1.2.0 artifacts.

The PR objective identifies this page as a 1.2.0 benchmark report.

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@en/docs/api-gateway/next/performance/gateway-runtime-with-four-cpus.md` at
line 52, Update the benchmark artifact links in this performance report,
including the mediation-policy percentile image and the CSV link, to use the
matching 1.2.0 dataset. Preserve the existing link targets and formatting while
replacing the omitted or outdated 1.1.0 artifact references.

# API Platform Gateway Performance

The performance of the WSO2 API Platform Gateway was evaluated using the following APIs, both of which invoke a simple Netty HTTP Echo Service. As the name suggests, the Netty service echoes back any request it receives.
The performance of the WSO2 API Platform Gateway was evaluated using the following APIs, both of which invoke a simple Netty HTTP Echo Service running on the same Amazon EKS cluster as the gateway. As the name suggests, the Netty service echoes back any request it receives.

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

📐 Maintainability & Code Quality | 🟡 Minor | ⚡ Quick win

Rewrite the updated methodology in active voice and short sentences.

The changed text uses passive constructions such as was evaluated, were conducted, was configured, are deployed, and are documented. Line 18 also exceeds 26 words and includes the filler phrase As the name suggests. Split the content and state the actor directly.

As per coding guidelines, use active voice, concise sentences, and direct wording.

Also applies to: 23-23, 34-34, 49-49

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@en/docs/api-gateway/next/performance/overview.md` at line 18, Rewrite the
updated methodology in en/docs/api-gateway/next/performance/overview.md using
active voice, short sentences, and explicit actors. Update the text at the
referenced sections, including the sentence around “The performance of the WSO2
API Platform Gateway,” to remove passive constructions, split sentences
exceeding 26 words, and remove filler such as “As the name suggests.”

Source: Coding guidelines

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant