我想知道是否有可能在java代码级别gcs处理重试次数和延迟。
我知道根据文件,有可能修改 num_retries
以及 max_retry_delay
.boto配置文件的“[boto]”部分的变量(如下所述https://cloud.google.com/storage/docs/gsutil/addlhelp/retryhandlingstrategy).
但我希望在java代码级别或spring配置中实现同样的功能。有可能吗?
我想知道是否有可能在java代码级别gcs处理重试次数和延迟。
我知道根据文件,有可能修改 num_retries
以及 max_retry_delay
.boto配置文件的“[boto]”部分的变量(如下所述https://cloud.google.com/storage/docs/gsutil/addlhelp/retryhandlingstrategy).
但我希望在java代码级别或spring配置中实现同样的功能。有可能吗?
1条答案
按热度按时间jrcvhitl1#
您可以使用名为gaxjava的api扩展构建重试设置。该库包含一个名为
com.google.api.gax.retrying
它与重试api调用有关。如果你看看文件,
StorageOptions.Builder
继承名为setRetrySettings()
哪个接受RetrySettings
.您可以使用此问题中的此示例代码来使用内部重试:
请注意问题中的以下注解:
重试机制用于处理数据传输超时、网络问题或拒绝访问问题超出其职责范围。它也不会保护您不受临时网络断开的影响。
作为附加参考,这里有一个github链接,可以查看默认的重试设置。