The current performance test of ACM-R is made by jmeter. The jmeter file is configured with a cycle where a composition in created and primed, and an instance is deployed, undeployed and deleted. The test is made again a Kubernetes environment defined in policy/docker.
We need to investigate the performance of ACM-R whit hundreds of compositions and instances deployed at same time and determine minimal/recommended requirements of memory and CPU.
Test using 100 compositions and instances
Test made with 5 user and 20 instances for each user.
policy-clamp-runtime-acm/policy-clamp-ac-pf-ppnt/policy-clamp-ac-http-ppnt/policy-clamp-ac-k8s-ppnt
Limits:
cpu: 1
memory: 4Gi
Requests:
cpu: 100m
memory: 1Gi
system_cpu_usage (15m)
Note: runtime has reached the max limit CPU. Http participant has used less then 500m.
jvm_memory_used_bytes (15m)
Note: runtime and participants have not used so much memory.
http_server_requests_seconds_max (15m)
spring_data_repository_invocations_seconds_max (15m)
Test using 500 compositions and instances
policy-clamp-runtime-acm/policy-clamp-ac-pf-ppnt/policy-clamp-ac-http-ppnt/policy-clamp-ac-k8s-ppnt
Limits:
cpu: 1
memory: 4Gi
Requests:
cpu: 100m
memory: 1Gi
system_cpu_usage (2h)
jvm_memory_used_bytes (2h)
http_server_requests_seconds_max (2h)
Note: with 500 compositions, some endpoints like "/v2/compositions" needs paginations.
spring_data_repository_invocations_seconds_max (2h)
Test using 500 compositions and instances
Test made with 5 user and 100 instances for each user.
policy-clamp-runtime-acm
Limits:
cpu: 2
memory: 4Gi
Requests:
cpu: 100m
memory: 1Gi
policy-clamp-ac-pf-ppnt/policy-clamp-ac-http-ppnt/policy-clamp-ac-k8s-ppnt
Limits:
cpu: 1
memory: 2Gi
Requests:
cpu: 100m
memory: 500Mi