Companion code for "Spring Framework 7's Built-in Resilience: @Retryable, @ConcurrencyLimit, and What's Left for Resilience4j". Every retry counted by recording real invocations: defaults, backoff and jitter, timeout, reactive and CompletableFuture returns, the concurrency limit's BLOCK and REJECT policies, retries around transactions, composition with Resilience4j 2.4.0, and the annotation API across 7.0.0-7.0.9. Co-Authored-By: Claude Opus 5 <[email protected]> Claude-Session: https://claude.ai/code/session_01C3TETMrqVUWeFkNtz3Jbo3
17 lines
605 B
Bash
17 lines
605 B
Bash
#!/usr/bin/env bash
|
|
# Run demo scenarios against a running application and commit each report.
|
|
# ./scripts/demo.sh retry defaults exhausted ... -> docs/output/retry-<scenario>.txt
|
|
set -uo pipefail
|
|
source "$(dirname "$0")/env.sh"
|
|
group="$1"; shift
|
|
for scenario in "$@"; do
|
|
file="$OUT/$group-$scenario.txt"
|
|
{
|
|
echo "# GET /demo/$group/$scenario (Spring Framework 7.0.9, Resilience4j 2.4.0, JDK 25)"
|
|
echo "# Source: src/main/java/com/ankurm/resilience/web/DemoController.java"
|
|
echo
|
|
curl -s "$BASE/demo/$group/$scenario" | python3 -m json.tool
|
|
} > "$file"
|
|
echo "wrote $file"
|
|
done
|