SimpleDBの接続エラー時のリトライ回数を設定する

setMaxErrorRetry にリトライ回数をセットします。 未指定時のリトライ回数は3回です。

リトライごとにインターバルを伸ばして最大20秒までリトライ間隔を取るようです。 そのため、表側のタイムアウト時間などを考慮してリトライ回数を設定し、適宜エラーを返す必要があります。

  private static final int CONNECTION_TIMEOUT = 10000;

  private static final int SOCKET_TIMEOUT = 10000;

  private static final int MAX_ERROR_RETRY = 10;

  public static AmazonSimpleDB getClient() {
    ClientConfiguration configuration = new ClientConfiguration();
    configuration.setConnectionTimeout(CONNECTION_TIMEOUT);
    configuration.setSocketTimeout(SOCKET_TIMEOUT);
    configuration.setMaxErrorRetry(MAX_ERROR_RETRY);

    AmazonSimpleDB client =
      new AmazonSimpleDBClient(new AWSCredentials() , configuration);
      client.setEndpoint(endpoint);
    return client;
  }