Eureka routing to Kong [ECS]

Eureka routing to Kong [ECS]

Overview

Summary

  • All tests completed successfully.

  • All tests show stable results in both routing approaches. Direct routing to Kong performs 6%-10% better than regular sidecar in scope of measured transactions:

    • /inventory/instances/{instanceId} - 6%, RTAC 1 vUser - 6%, RTAC 5 vUsers - 10%, CI/CO 20 vUsers - 7%, CI/CO 40 vUsers - 8%.

  • Service CPU distribution shifted — especially around user-keycloak, inventory-storage, and roles services. See CPU utilization most used modules values.

  • DB CPU utilization increased in some cases but stayed within manageable limits.

Test Runs 

Test #

Workflow

Transaction

Duration

vUsers

Eureka routing

Test #

Workflow

Transaction

Duration

vUsers

Eureka routing

1

Simple

GET /inventory/instances/{instanceId}

10 minutes

1

sidecar

2

Medium

TC_RTAC: edge-rtac

10 minutes

1

sidecar

3

Medium

TC_RTAC: edge-rtac

10 minutes

5

sidecar

4

Complex

Check-In/Check-Out

10 minutes

20

sidecar

5

Complex

Check-In/Check-Out

10 minutes

40

sidecar

6

Simple

GET /inventory/instances/{instanceId}

10 minutes

1

kong

7

Medium

TC_RTAC: edge-rtac

10 minutes

1

kong

8

Medium

TC_RTAC: edge-rtac

10 minutes

5

kong

9

Complex

Check-In/Check-Out

10 minutes

20

kong

10

Complex

Check-In/Check-Out

10 minutes

40

kong

 

Results

 

 

 

 

 

Sidecar routing

Kong routing

 

 

 

 

Sidecar routing

Kong routing

Workflow

Transaction

Duration

vUsers

Samples #

Response times, ms

CI, ms

CO, ms

Samples #

Response times, ms

CI, ms

CO, ms

Simple

GET /inventory/instances/{instanceId}

10 minutes

1

9501

63

 

 

9985

59

 

 

Medium

TC_RTAC: edge-rtac

10 minutes

1

1163

516

 

 

1236

487

 

 

Medium

TC_RTAC: edge-rtac

10 minutes

5

2516

1136

 

 

2787

1025

 

 

Complex

Check-In/Check-Out

10 minutes

20

 

 

478

1127

 

 

444

1050

Complex

Check-In/Check-Out

10 minutes

40

 

 

490

1186

 

 

449

1083

Comparisons

The comparison table shows Kong routing perform slightly better or the same.

 

 

 

 

Sidecar routing

Kong routing

 

 

 

 

 

Sidecar routing

Kong routing

 

Workflow

Transaction

Duration

vUsers

Samples #

Response times, ms

CI, ms

CO, ms

Samples #

Response times, ms

CI, ms

CO, ms

Delta, ms

Delta CI, ms

Delta CO, ms

Simple

GET /inventory/instances/{instanceId}

10 minutes

1

9501

63

 

 

9985

59

 

 

-4 (-6%)

 

 

Medium

TC_RTAC: edge-rtac

10 minutes

1

1163

516

 

 

1236

487

 

 

-29 (-6%)

 

 

Medium

TC_RTAC: edge-rtac

10 minutes

5

2516

1136

 

 

2787

1025

 

 

-111 (-10%)

 

 

Complex

Check-In/Check-Out

10 minutes

20

 

 

478

1127

 

 

444

1050

 

-34 (-7%)

-77 (-7%)

Complex

Check-In/Check-Out

10 minutes

40

 

 

490

1186

 

 

449

1083

 

-41 (-8%)

-103 (-9%)

Service CPU utilization

most used modules:

 

Workflow

max CPU Sidecar

max CPU Kong

 

Workflow

max CPU Sidecar

max CPU Kong

GET /inventory/instances/{instanceId}

mod-inventory - 38%,mod-inventory-storage - 35%

mod-inventory - 41%,mod-inventory-storage - 39%

TC_RTAC: edge-rtac

mod-inventory - 17%, mod-consortia-keycloak - 42%

mod-inventory - 17%, mod-consortia-keycloak - 58%

TC_RTAC: edge-rtac

mod-inventory - 17%, mod-consortia-keycloak - 67/%

mod-inventory - 17%, mod-consortia-keycloak - 80%

Check-In/Check-Out

mod-inventory-storage - 61%, mod-user-keycloak - 58%, mod-roles-keycloak - 48%, mod-inventory - 34%

mod-user-keycloak - 66%, roles-keycloak - 60%,mod-inventory-storage - 51%, mod-inventory - 33%

Check-In/Check-Out

mod-inventory-storage - 113%, mod-user-keycloak - 103%, mod-roles-keycloak - 104%, mod-inventory - 52%

mod-user-keycloak - 111%, roles-keycloak - 89%, mod-inventory-storage - 88%, mod-inventory - 46%

Sidecar routing

image-20251128-095652.png

Kong routing

image-20251128-110248.png

 

Service memory usage

Memory usage showed stable trends with no spikes. No memory leaks in both routing modes.

Sidecar routing

image-20251128-095814.png

Kong routing

image-20251128-110302.png

 

Database metrics

Database connections are close to 1700

Sidecar routing

image-20251128-095903.png

Test #3

image-20251128-100530.png
image-20251128-100540.png

Test #5

image-20251128-100649.png
image-20251128-100701.png

Kong routing

image-20251128-110613.png

 

Test #3

image-20251128-100956.png
image-20251128-101009.png

Test #5

image-20251128-101111.png
image-20251128-101124.png

Additional steps

Few more tests were carried out for CI/CO and RTAC in HA mode in KONG and SIDECAR to get info from sidecars CPU utilization. The main observation here KONG routing consume 3 times more CPU than default SIDECAR configuration, but sidecars containerCPU didn’t change much. The chart which may describe the ingress and egress requests in sidecars below as well.

image-20251205-153734.png
image-20251205-161753.png

 

 

Appendix

Infrastructure

PTF - environment Sunflower(secon)

PTF - environment Sunflower(secon)

  • secon 9 r7g.2xlarge EC2 instances located in US East (N. Virginia)us-east-1 

  • 1 instance of db.r7g.xlarge database instance: Writer instance

  • MSK fse-test

    • 4 kafka.m7g.xlarge brokers in 2 zones (2 brokers per zone)

      • Apache Kafka version 3.7.x, metadata mode - KRaft

      • EBS storage volume per broker 300 GiB

      • auto.create.topics.enable=true

      • log.retention.minutes=480

      • default.replication.factor=3

      • revision - 26

  • OpenSearch 2.13 ptf-test cluster

    • r7g.2xlarge.search 4 data nodes

    • r6g.large.search 3 dedicated master nodes

      • Kafka consolidated topics enabled

Cluster Resources - secon-pvt (Thu Nov 27 09:33:25 UTC 2025)

Cluster Resources - secon-pvt (Thu Nov 27 09:33:25 UTC 2025)

 

 

 

 

 

 

 

 

 

 

Module

Task Definition Revision