A classe RetryParams

RetryParams é fornecido pela biblioteca de cliente do App Engine para Cloud Storage contida em src/cloudstorage. Essa classe permite alterar as configurações padrão usadas para processar tempos limite e novas tentativas.

Introdução

A biblioteca de cliente do App Engine para Cloud Storage usa configurações padrão a fim de processar tempos limite e novas tentativas quando você estiver tentando entrar em contato com os servidores do Google Cloud Storage. Essa classe permite alterar essas configurações, seja em todo o aplicativo ou para uma invocação específica de uma função de biblioteca (copy2, delete, listbucket, open e stat). Você só precisa alterar a configuração específica em que tem interesse, porque todas as outras configurações são mantidas, a menos que sejam substituídas explicitamente. Cada instância de RetryParams é exclusiva por thread e por solicitação.

Para alterar uma configuração padrão em todo o aplicativo, você cria um objeto RetryParams, especifica as configurações que quer alterar e fornece esse objeto para a função cloudstorage.set_default_retry_params() da seguinte maneira:

my_default_retry_params = cloudstorage.RetryParams(initial_delay=0.2,
                                      max_delay=5.0,
                                      backoff_factor=2,
                                      max_retry_period=15)
cloudstorage.set_default_retry_params(my_default_retry_params)

Para alterar configurações padrão apenas de uma invocação de função específica, crie um objeto RetryParams e o forneça diretamente para a função no parâmetro retry_params, da seguinte maneira:

write_retry_params = cloudstorage.RetryParams(backoff_factor=1.1)
gcs_file = cloudstorage.open(filename,
                    'w',
                    content_type='text/plain',
                    options={'x-goog-meta-foo': 'foo',
                             'x-goog-meta-bar': 'bar'},
                    retry_params=write_retry_params)

Ela não entra em vigor nas configurações padrão usadas pelo app ou por outras invocações de função.

Propriedades da instância

Uma instância de RetryParams tem as seguintes propriedades:

initial_delay
O número de segundos de atraso antes de uma nova tentativa. O padrão é 0.1. O atraso ajuda a distribuir a carga no servidor do Google Cloud Storage.
backoff_factor
O multiplicador de retirada exponencial, usado para determinar a taxa de processamento ideal. O padrão é 2.0. Para uma descrição e recomendações para definir esse valor, consulte a documentação do Google Cloud Storage em retirada.
max_delay
O número máximo de segundos para aguardar entre novas tentativas. O padrão é 10.0.
min_retries
O número mínimo de vezes de nova tentativa. O padrão é 3.
max_retries
O número máximo de vezes de nova tentativa. Defina esse valor como 0 caso você não queira novas tentativas. O padrão é 6.
max_retry_period
O número máximo de segundos que pode ser gasto em todas as tentativas de uma determinada solicitação. O padrão é 30.0. Uma nova tentativa é parada quando esse período passa E min_retries foi tentado.
urlfetch_timeout
O número de segundos de espera de UrlFetch para entrar em contato com os servidores do Google Cloud Storage antes de retornar um erro de tempo limite. Por padrão, ele é definido como None, ou seja, o prazo padrão de UrlFetch é usado, que é de cinco segundos. É possível defini-lo como qualquer valor de até 60 segundos, no máximo.
Esta página foi útil? Conte sua opinião sobre:

Enviar comentários sobre…

Ambiente padrão do App Engine para Python 2