これをテストする方法はわかりませんし、可能であれば簡単な答えが必要です。@HystrixCommandで@Asyncを使用することができます
だから私は、サービスのAPI-ゲートウェイコールを持っている、と私が知りたいのは、次の春ブーツ
@Component
class GatewayService {
@Autowired
private MicroserviceGateway microServiceGateway;
@Async
@HystrixCommand(threadPool = "microservice", groupKey = "microService", fallback = "getResponse2")
private Future<ResponseDTO> getResponse(RequestDTO request) {
try {
ResponseDTO response = new APIRequest(endpoint, api).body(request).post();
return new AsyncResult(response);
} catch (Exception e) {
throw new GatewayServiceException(e);
}
}
public Future<ResponseDTO> getResponse2(RequestDTO request) {
return Futures.immediateFuture(RequestDTO.empty());
}
}
で可能であるならば、フォールバックが機能することはありますか?それはすべて非同期でしょうか?
EDIT:これを試してみましょう。未来はすぐに返されるので、ヒストリは無視されています。どのような回避策ですか?ソリューション?
"これをテストする方法がわかりません" - そのコードを実行するのはどうですか? – OrangeDog
申し訳ありません、@HystrixCommandを追加するのを忘れました –
hystrixとasyncが一緒に動作するかどうかをテストするにはどうすればいいですか? –