2.9 KiB
2.9 KiB
Amount-ladder payment benchmark
Model
| Side | Machine | Role |
|---|---|---|
| Drive (external) | Local machine (this tree) | taler-wallet-cli, orchestration, CSV/RESULTS |
| SUT (internal) | koopa containers | merchant / exchange / bank under load |
| Measure (internal) | ssh hernani@koopa |
loadavg, ps in each container |
[ Local-machine wallet-cli ] --HTTPS--> taler.hacktivism.ch / exchange / bank
| ^
| ssh sample_load | pasta :9010/:9011/:9012
v |
[ hernani@koopa ] --podman exec--> process CPU/RSS snapshots
Prerequisites
- Stack healthy (
check_*-health.shall green; public/config+ exchange/keys200). - Local wallet CLI (default path in script, override
MONO=). - Secrets in
../koopa-admin-secrets/koopa/host-root/:taler-bank/bank-admin-password.txttaler-bank/bank-bench-fat-password.txt(created if missing)taler-merchant/merchant-goa-demo-cp4zqk-password.txt
- SSH:
hernani@koopaBatchMode,podmanwithout su.
Amount ladder (~20 payments: small / medium / large)
| Band | Amounts (GOA) |
|---|---|
| small | 0.000001 0.00001 0.0001 0.001 0.01 0.05 0.1 0.5 |
| medium | 1 2 5 10 25 50 100 |
| large | 250 500 1000 2500 5000 |
Default list (20 steps):
GOA:0.000001 GOA:0.00001 GOA:0.0001 GOA:0.001 GOA:0.01 GOA:0.05 GOA:0.1 GOA:0.5
GOA:1 GOA:2 GOA:5 GOA:10 GOA:25 GOA:50 GOA:100
GOA:250 GOA:500 GOA:1000 GOA:2500 GOA:5000
Σ ladder ≈ GOA:9433 → default withdraw GOA:50000, admin credit GOA:200000.
Override: AMOUNTS='GOA:1 GOA:10' ./run.sh
Pay-template URI (important)
Do not put a trailing slash after the template id (wallet then 404s).
taler://pay-template/taler.hacktivism.ch/instances/goa-demo-cp4zqk/goa-free?amount=GOA:1
- Template
goa-freeis free-amount with fixed summary"pay"→ pass onlyamount=(nosummary=or merchant 409). - HTTP GET probe:
https://taler.hacktivism.ch/instances/goa-demo-cp4zqk/templates/goa-free→ 200.
Run
cd koopa-admin-log/benchmarks/amount-ladder
./run.sh
# short:
AMOUNTS='GOA:0.05 GOA:1 GOA:10' WITHDRAW_AMT=GOA:100 ./run.sh
Outputs under ../../.tmp/amount-bench-<UTC>/:
| File | Content |
|---|---|
payments.csv |
per-amount timings + status |
RESULTS.md |
table summary |
koopa-load-*.out |
inside process samples |
run.log |
timeline |
Columns (RESULTS)
- handle: wall time of
wallet handle-uri - run-until-done: wallet background after handle
- total: sum
- loadavg: koopa 1‑min load after payment
- status:
paid/error/insufficient/ …
Related
- Partial earlier run (wrong URI):
2026/2026-07-09--amount-ladder-partial-results.md - Instance notes:
configs/taler-merchant/demo-instance-goa-demo-cp4zqk.md