WLP 的微配置文件容错隔板实施未启动



试图在 Java HotSpot(TM( 64 位服务器 VM 版本 1.8.0_161-b12 (en_US( 上测试 WebSphere Liberty (WebSphere Application Server 18.0.0.3/wlp-1.0.22.cl180320180905-2337( 中的微配置文件容错,但我无法启动隔板逻辑。

创建了一个 REST 资源:

import org.eclipse.microprofile.faulttolerance.Bulkhead;
@Path("bulk")
public class BulkheadResource {
@GET
@Bulkhead(1)
public String getBulk() {
return getMessage();
}
private String getMessage() {
String vMessage = "Start: " + System.currentTimeMillis();
try {
Thread.sleep(5000);
} catch (InterruptedException e) {
e.printStackTrace();
}
return vMessage;
}
}

并使用 3 个线程从 JMeter 调用它。我的期望是第一次调用可以正常工作,但第 2 次和第 3 次会失败,因为第一次调用占用了唯一的线程并且舱壁可以工作。

相反,在5 秒后,所有三个线程都返回了 200 响应:

timeStamp   elapsed label   responseCode    threadName  grpThreads
1539095137936   5057    GET Bulk    200 Micro Profile 1-1   3
1539095138272   5041    GET Bulk    200 Micro Profile 1-2   2
1539095138608   5029    GET Bulk    200 Micro Profile 1-3   1

服务器.xml:

<featureManager>
<feature>microProfile-2.0</feature>
<feature>localConnector-1.0</feature>
</featureManager>

有什么想法吗?

断路器链接到实例。在您的示例中,您的 Bean 是依赖作用域的,并且每个请求都有自己的断路器。如果更改为应用程序范围,则应看到预期发生的情况。

最新更新