Попытка протестировать отказоустойчивость микропрофиля в WebSphere Liberty (WebSphere Application Server 18.0.0.3/wlp-1.0.22.cl180320180905-2337) на виртуальной машине Java HotSpot (TM) 64-Bit Server, версия 1.8.0_161-b12 (en_US) но я не могу заставить перехватить логику переборки.
Создал ресурс 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;
}
}
И вызывает его из JMeter с 3 потоками.Я ожидал, что первый вызов будет работать нормально, но 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
Server.xml:
<featureManager>
<feature>microProfile-2.0</feature>
<feature>localConnector-1.0</feature>
</featureManager>
Есть идеи?