JMSフリートAPIの使用中に不正なゲートウェイまたは接続タイムアウトが発生しました

JMSフリートAPIの使用中に不正なゲートウェイまたは接続がタイムアウトした場合は、次の解決策を試してください。
  • SDK for Javaを使用してJMSフリートAPIを呼び出します
  • ページ・サイズを1000から1ページ当たり500から800レコードに削減
  • 次の例に示すように、失敗した場合に再試行するように再試行戦略を構成します。
    final long DEFAULT_MAX_WAIT_TIME = TimeUnit.SECONDS.toMillis(40L);
    final int DEFAULT_MAX_RETRY_ATTEMPTS = 9;
    RetryConfiguration retryConfiguration = RetryConfiguration.builder().terminationStrategy(new MaxAttemptsTerminationStrategy(DEFAULT_MAX_RETRY_ATTEMPTS))
            .delayStrategy(new ExponentialBackoffDelayStrategyWithJitter(DEFAULT_MAX_WAIT_TIME)).terminationStrategy(new MaxAttemptsTerminationStrategy(DEFAULT_MAX_RETRY_ATTEMPTS))
            .delayStrategy(new ExponentialBackoffDelayStrategyWithJitter(DEFAULT_MAX_WAIT_TIME)).retryCondition((exception) ->     exception.getStatusCode() == 429
                    || exception.getStatusCode() == 502
                    || exception.getStatusCode() == 503
                    || exception.getStatusCode() == 504).build(); 
  • 例に示すように、クライアントのタイムアウト期間を増やします。
    ClientConfiguration clientConfiguration = ClientConfiguration.builder()
                    .connectionTimeoutMillis(30000)
                    .readTimeoutMillis(30000)
                    .retryConfiguration(retryConfiguration)
                    .build();
  • JMSフリートAPIコールの同時起動を1秒当たり10リクエスト未満に制限