Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 6 additions & 0 deletions config/config.ini
Original file line number Diff line number Diff line change
Expand Up @@ -104,6 +104,12 @@ PH_EE_ENV_TEMPLATE_REPO_BRANCH = mifos-v2.0.0
# Directory for Payment Hub EE environment template repository.
PH_EE_ENV_TEMPLATE_REPO_DIR = ph_template

[jvm]
# JVM Profile for Payment Hub EE services.
# Options: auto, micro, std, perf.
# 'auto' resolves to a profile based on detected host RAM.
profile = auto

[mastercard-demo]
# Enable or disable mastercard-demo deployment.
enabled = false
Expand Down
69 changes: 35 additions & 34 deletions config/ph_values.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -71,9 +71,8 @@ ph-ee-engine:
value: "paymenthub-ee"
- name: JAVA_TOOL_OPTIONS
value: |
-Xms128m
-Xmx256m
-XX:+UseSerialGC
-XX:InitialRAMPercentage=75.0
-XX:MaxRAMPercentage=75.0
-XX:ReservedCodeCacheSize=64m
-XX:MaxMetaspaceSize=128m
-XX:+HeapDumpOnOutOfMemoryError
Expand Down Expand Up @@ -224,9 +223,9 @@ ph-ee-engine:
io.camunda.operate: DEBUG

deployment:
extraEnv:
- name: JAVA_TOOL_OPTIONS
value: "-Xms64m -Xmx256m -XX:+UseSerialGC -XX:ReservedCodeCacheSize=64m -XX:MaxMetaspaceSize=128m -XX:+HeapDumpOnOutOfMemoryError"
extraEnvs:
- name: JAVA_TOOL_OPTIONS
value: "-XX:InitialRAMPercentage=75.0 -XX:MaxRAMPercentage=75.0 -XX:ReservedCodeCacheSize=64m -XX:MaxMetaspaceSize=128m -XX:+HeapDumpOnOutOfMemoryError"

resources:
requests:
Expand Down Expand Up @@ -301,9 +300,8 @@ ph-ee-engine:
value: "bluebank"
- name: JAVA_TOOL_OPTIONS
value: |
-Xms128m
-Xmx256m
-XX:+UseSerialGC
-XX:InitialRAMPercentage=75.0
-XX:MaxRAMPercentage=75.0
-XX:ReservedCodeCacheSize=64m
-XX:MaxMetaspaceSize=128m
-XX:+HeapDumpOnOutOfMemoryError
Expand All @@ -322,9 +320,9 @@ ph-ee-engine:
extraEnvs:
- name: JAVA_TOOL_OPTIONS
value: |
-Xms64m
-Xmx128m
-XX:+UseSerialGC

-XX:InitialRAMPercentage=75.0
-XX:MaxRAMPercentage=75.0
-XX:ReservedCodeCacheSize=64m
-XX:MaxMetaspaceSize=128m
-XX:+HeapDumpOnOutOfMemoryError
Expand Down Expand Up @@ -352,9 +350,8 @@ ph-ee-engine:
extraEnvs:
- name: JAVA_TOOL_OPTIONS
value: |
-Xms64m
-Xmx256m
-XX:+UseSerialGC
-XX:InitialRAMPercentage=75.0
-XX:MaxRAMPercentage=75.0
-XX:ReservedCodeCacheSize=64m
-XX:MaxMetaspaceSize=128m
-XX:+HeapDumpOnOutOfMemoryError
Expand Down Expand Up @@ -432,9 +429,8 @@ ph-ee-engine:
extraEnvs:
- name: JAVA_TOOL_OPTIONS
value: |
-Xms128m
-Xmx256m
-XX:+UseSerialGC
-XX:InitialRAMPercentage=75.0
-XX:MaxRAMPercentage=75.0
-XX:ReservedCodeCacheSize=64m
-XX:MaxMetaspaceSize=128m
-XX:+HeapDumpOnOutOfMemoryError
Expand Down Expand Up @@ -497,9 +493,9 @@ ph-ee-engine:
extraEnvs:
- name: JAVA_TOOL_OPTIONS
value: |
-Xms64m
-Xmx128m
-XX:+UseSerialGC

-XX:InitialRAMPercentage=75.0
-XX:MaxRAMPercentage=75.0
-XX:ReservedCodeCacheSize=64m
-XX:MaxMetaspaceSize=128m
-XX:+HeapDumpOnOutOfMemoryError
Expand Down Expand Up @@ -550,7 +546,6 @@ ph-ee-engine:

kafka:
enabled: true
heapOpts: "-Xms128m -Xmx256m"
resources:
requests:
memory: 500Mi
Expand Down Expand Up @@ -580,9 +575,9 @@ ph-ee-engine:
value: "/batchtransactions/execution"
- name: JAVA_TOOL_OPTIONS
value: |
-Xms64m
-Xmx128m
-XX:+UseSerialGC

-XX:InitialRAMPercentage=75.0
-XX:MaxRAMPercentage=75.0
-XX:ReservedCodeCacheSize=64m
-XX:MaxMetaspaceSize=128m
-XX:+HeapDumpOnOutOfMemoryError
Expand All @@ -593,11 +588,11 @@ ph-ee-engine:
resources:
requests:
cpu: 50m
memory: 192Mi
memory: 128Mi
limits:
cpu: 300m
cpu: 100m
memory: 256Mi
javaToolOptions: "-Xms64m -Xmx128m -XX:+UseSerialGC -XX:ReservedCodeCacheSize=64m -XX:MaxMetaspaceSize=128m -XX:+HeapDumpOnOutOfMemoryError"


zeebe_ops:
enabled: true
Expand All @@ -617,9 +612,8 @@ ph-ee-engine:
extraEnvs:
- name: JAVA_TOOL_OPTIONS
value: |
-Xms128m
-Xmx256m
-XX:+UseSerialGC
-XX:InitialRAMPercentage=75.0
-XX:MaxRAMPercentage=75.0
-XX:ReservedCodeCacheSize=64m
-XX:MaxMetaspaceSize=128m
-XX:+HeapDumpOnOutOfMemoryError
Expand All @@ -643,9 +637,16 @@ ph-ee-engine:
extraEnvs:
- name: JAVA_TOOL_OPTIONS
value: |
-Xms128m
-Xmx256m
-XX:+UseSerialGC
-XX:InitialRAMPercentage=75.0
-XX:MaxRAMPercentage=75.0
-XX:ReservedCodeCacheSize=64m
-XX:MaxMetaspaceSize=128m
-XX:+HeapDumpOnOutOfMemoryError
taspaceSize=128m
-XX:+HeapDumpOnOutOfMemoryError
|
-XX:InitialRAMPercentage=75.0
-XX:MaxRAMPercentage=75.0
-XX:ReservedCodeCacheSize=64m
-XX:MaxMetaspaceSize=128m
-XX:+HeapDumpOnOutOfMemoryError
95 changes: 95 additions & 0 deletions config/profiles/phee/micro.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,95 @@
# PH-EE JVM Profile: Micro
# Optimized for low-resource environments (e.g., Raspberry Pi, < 8GB RAM)
# The JVM will automatically use SerialGC due to small container limits.

ph-ee-engine:
operations_app:
resources:
requests:
cpu: 100m
memory: 256Mi
limits:
cpu: 500m
memory: 384Mi

connector_mojaloop:
resources:
requests:
cpu: 50m
memory: 256Mi
limits:
cpu: 200m
memory: 384Mi

connector_mock_payment_schema:
resources:
requests:
cpu: 50m
memory: 128Mi
limits:
cpu: 200m
memory: 256Mi

bulk_processor:
resources:
requests:
cpu: 100m
memory: 256Mi
limits:
cpu: 500m
memory: 384Mi

connector_channel:
resources:
requests:
cpu: 50m
memory: 128Mi
limits:
cpu: 200m
memory: 256Mi

kafka:
heapOpts: "-Xms128m -Xmx128m"
resources:
requests:
cpu: 100m
memory: 256Mi
limits:
cpu: 500m
memory: 384Mi

connector_bulk:
resources:
requests:
cpu: 50m
memory: 128Mi
limits:
cpu: 200m
memory: 256Mi

importer_rdbms:
resources:
requests:
cpu: 50m
memory: 128Mi
limits:
cpu: 200m
memory: 256Mi

zeebe_ops:
resources:
requests:
cpu: 50m
memory: 256Mi
limits:
cpu: 200m
memory: 384Mi

connector_ams_mifos:
resources:
requests:
cpu: 50m
memory: 256Mi
limits:
cpu: 200m
memory: 384Mi
95 changes: 95 additions & 0 deletions config/profiles/phee/perf.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,95 @@
# PH-EE JVM Profile: Performance
# Optimized for high-throughput environments (> 32GB RAM)
# The JVM will use G1GC and enable String Deduplication.

ph-ee-engine:
operations_app:
resources:
requests:
cpu: 1000m
memory: 1Gi
limits:
cpu: 2000m
memory: 1.5Gi

connector_mojaloop:
resources:
requests:
cpu: 500m
memory: 1Gi
limits:
cpu: 1000m
memory: 1.5Gi

connector_mock_payment_schema:
resources:
requests:
cpu: 200m
memory: 512Mi
limits:
cpu: 500m
memory: 1Gi

bulk_processor:
resources:
requests:
cpu: 1000m
memory: 1Gi
limits:
cpu: 2000m
memory: 1.5Gi

connector_channel:
resources:
requests:
cpu: 500m
memory: 512Mi
limits:
cpu: 1000m
memory: 1Gi

kafka:
heapOpts: "-Xms512m -Xmx512m"
resources:
requests:
cpu: 500m
memory: 1Gi
limits:
cpu: 1000m
memory: 1.5Gi

connector_bulk:
resources:
requests:
cpu: 200m
memory: 512Mi
limits:
cpu: 500m
memory: 1Gi

importer_rdbms:
resources:
requests:
cpu: 500m
memory: 512Mi
limits:
cpu: 1000m
memory: 1Gi

zeebe_ops:
resources:
requests:
cpu: 500m
memory: 1Gi
limits:
cpu: 1000m
memory: 1.5Gi

connector_ams_mifos:
resources:
requests:
cpu: 500m
memory: 1Gi
limits:
cpu: 1000m
memory: 1.5Gi
Loading
Loading