Red Hat Certified Cloud-native Developer exam 試験
最新更新時間: 2026/09/21
【秋学習応援セール|10月限定キャンペーン】:EX378 最新真題を買う時、日本語版と英語版両方を同時に獲得できます。
実際の問題集を練習し、試験のポイントを了解し、テストに申し込むするかどうかを決めることができます。
さらに試験準備時間の35%を節約するには、EX378 問題集を使用してください。
Question No : 1
Verify health endpoints with curl.
正解:
Explanation:
curl http://localhost:8080/q/health # all
curl http://localhost:8080/q/health/live # liveness
curl http://localhost:8080/q/health/ready # readiness
12 1. Use a shared service in a health check to determine status.
A. See the Explanation.
Answer: A
Explanation:
@Readiness
@ApplicationScoped
public class ServiceHealthCheck implements HealthCheck {
@Inject ExternalService service;
@Override
public HealthCheckResponse call() {
return service.isAvailable() ? HealthCheckResponse.up("external-ok") :
HealthCheckResponse.down("external-fail");
}
}
Question No : 2
Simulate a slow reactive readiness check.
正解:
Explanation:
@Readiness
@ApplicationScoped
public class SlowReactiveReadiness implements ReactiveHealthCheck {
@Override
public Uni<HealthCheckResponse> call() {
return Uni.createFrom().item(() -> HealthCheckResponse.up("slow-ready"))
.onItem().delayIt().by(Duration.ofSeconds(2));
}
}
Question No : 3
Use @Startup with custom delay simulation.
正解:
Explanation:
@Startup
@ApplicationScoped
public class DelayedStartupProbe implements HealthCheck {
private final long startTime = System.currentTimeMillis();
@Override
public HealthCheckResponse call() {
return System.currentTimeMillis() - startTime > 3000 ? HealthCheckResponse.up("delayed-startup")
: HealthCheckResponse.down("booting");
}
}
Question No : 4
Implement a reactive health check using Uni.
正解:
Explanation:
@Liveness
@ApplicationScoped
public class ReactiveLivenessCheck implements ReactiveHealthCheck {
@Override
public Uni<HealthCheckResponse> call() {
return Uni.createFrom().item(HealthCheckResponse.up("reactive-check"));
}
}
Question No : 5
Create a HealthCheckResponse with data payload.
正解:
Explanation:
@Readiness
@ApplicationScoped
public class DiskSpaceCheck implements HealthCheck {
@Override
public HealthCheckResponse call() {
File root = new File("/");
long freeSpace = root.getFreeSpace();
return HealthCheckResponse.named("disk-space")
.status(freeSpace > 1000000000)
.withData("free", freeSpace)
.build();
}
}
Question No : 6
Use @Liveness and @Readiness on separate checks and access them via REST.
正解:
Explanation:
• Access /q/health/live for @Liveness
• Access /q/health/ready for @Readiness
• Add multiple classes each annotated with either annotation
Question No : 7
Add startup probe to signal when the app has completed boot.
正解:
Explanation:
@Startup
@ApplicationScoped
public class StartupProbe implements HealthCheck {
private final long start = System.currentTimeMillis();
@Override
public HealthCheckResponse call() {
return (System.currentTimeMillis() - start > 5000)
? HealthCheckResponse.up("startup-complete") : HealthCheckResponse.down("still-starting");
}
}
Question No : 8
Implement a liveness check that fails after 3 failed pings.
正解:
Explanation:
@Liveness
@ApplicationScoped
public class PingLivenessCheck implements HealthCheck { int failures = 0;
@Override
public HealthCheckResponse call() {
if (++failures > 3) return HealthCheckResponse.down("ping-fail"); return HealthCheckResponse.up("ping-ok");
}
}
Question No : 9
Create a readiness check that verifies if a file exists.
正解:
Explanation:
@Readiness
@ApplicationScoped
public class FileReadinessCheck implements HealthCheck {
@Override
public HealthCheckResponse call() {
File f = new File("/tmp/ready.flag");
return f.exists() ? HealthCheckResponse.up("file-check") : HealthCheckResponse.down("file-check");
}
}
Question No : 10
Use async bulkhead fallback with CompletionStage.
正解:
Explanation:
@Asynchronous
@Bulkhead(value = 2, waitingTaskQueue = 5)
@Fallback(fallbackMethod = "asyncFallback")
public CompletionStage<String> bulkheadAsync() {
return CompletableFuture.supplyAsync(() -> {
Thread.sleep(3000);
return "Done";
});
}
public CompletionStage<String> asyncFallback() {
return CompletableFuture.completedFuture("Fallback async result");
}
11 1. Create a basic liveness check using the HealthCheck interface.
A. See the Explanation.
Answer: A
Explanation:
@Liveness
@ApplicationScoped
public class BasicLivenessCheck implements HealthCheck {
@Override
public HealthCheckResponse call() {
return HealthCheckResponse.up("basic-liveness");
}
}
Hit /q/health/live to see the result.
Question No : 11
Apply @Bulkhead to a JAX-RS endpoint to throttle API usage.
正解:
Explanation:
@Path("/upload")
public class UploadResource {
@GET
@Bulkhead(3)
public String upload() {
return "Processing upload...";
}
}
Prevents more than 3 concurrent uploads.
Question No : 12
Monitor bulkhead and circuit breaker states in real time.
正解:
Explanation:
Use tools like Prometheus + Grafana or Quarkus Dev UI (in dev mode) to inspect runtime health of fault-tolerant components.
Question No : 13
Log circuit breaker and bulkhead metrics for monitoring.
正解:
Explanation:
Enable metrics in Quarkus:
quarkus.smallrye-metrics.enabled=true
Then access /q/metrics endpoint to view fault tolerance metrics.
Question No : 14
Dynamically read config fallback threshold from application.properties.
正解:
Explanation:
@Inject
@ConfigProperty(name = "fallback.threshold", defaultValue = "5")
int threshold;
Used in fallback logic or method to tune runtime behavior.
Question No : 15
Create reusable config profile for staging environment.
正解:
Explanation:
application-staging.properties:
mp.fault.tolerance.timeout.default.timeout=2000
mp.fault.tolerance.bulkhead.default.value=4
Activate with: -Dquarkus.profile=staging