HttpClientOptions Classe
- java.
lang. Object - com.
azure. core. util. ClientOptions - com.
azure. core. util. HttpClientOptions
- com.
- com.
public final class HttpClientOptions
extends ClientOptions
Opções gerais de configuração para HttpClient.
HttpClient as implementações podem não dar suporte a todas as opções de configuração nessa classe.
Resumo do Construtor
Construtor | Description |
---|---|
HttpClientOptions() |
Cria uma nova instância de HttpClientOptions. |
Resumo do método
Modificador e tipo | Método e descrição |
---|---|
Configuration |
getConfiguration()
Obtém o repositório de configuração que o HttpClient usará. |
Duration |
getConnectTimeout()
Obtém o tempo limite de conexão para uma solicitação a ser enviada. |
Duration |
getConnectionIdleTimeout()
Obtém a duração do tempo antes que uma conexão ociosa seja fechada. |
Class<> |
getHttpClientProvider()
Obtém o HttpClientProvider tipo da implementação que deve ser usada para construir uma instância do HttpClient. |
Integer |
getMaximumConnectionPoolSize()
Obtém o tamanho máximo do pool de conexões usado pelo cliente HTTP subjacente. |
Proxy |
getProxyOptions()
Obtém o ProxyOptions que o HttpClient usará. |
Duration |
getReadTimeout()
Obtém a duração do tempo limite de leitura usada ao ler a resposta do servidor. |
Duration |
getResponseTimeout()
Obtém a duração do tempo limite de resposta usada ao aguardar a resposta de um servidor. |
Duration |
getWriteTimeout()
Obtém o tempo limite de gravação para uma solicitação a ser enviada. |
Http |
readTimeout(Duration readTimeout)
Define a duração do tempo limite de leitura usada ao ler a resposta do servidor. |
Http |
responseTimeout(Duration responseTimeout)
Define a duração do tempo limite de resposta usada ao aguardar a resposta de um servidor. |
Http |
setApplicationId(String applicationId)
Define a ID do aplicativo. |
Http |
setConfiguration(Configuration configuration)
Define o repositório de configuração que o HttpClient usará. |
Http |
setConnectTimeout(Duration connectTimeout)
Define o tempo limite de conexão para uma solicitação a ser enviada. |
Http |
setConnectionIdleTimeout(Duration connectionIdleTimeout)
Define a duração do tempo antes de uma conexão ociosa. |
Http |
setHeaders(Iterable<Header> headers)
Define o Header. |
Http |
setHttpClientProvider(Class<? extends HttpClientProvider> httpClientProvider)
Define o tipo da HttpClientProvider implementação que deve ser usada para construir uma instância do HttpClient. |
Http |
setMaximumConnectionPoolSize(Integer maximumConnectionPoolSize)
Define o tamanho máximo do pool de conexões usado pelo cliente HTTP subjacente. |
Http |
setProxyOptions(ProxyOptions proxyOptions)
Define o ProxyOptions que o HttpClient usará. |
Http |
setReadTimeout(Duration readTimeout)
Define a duração do tempo limite de leitura usada ao ler a resposta do servidor. |
Http |
setResponseTimeout(Duration responseTimeout)
Define a duração do tempo limite de resposta usada ao aguardar a resposta de um servidor. |
Http |
setWriteTimeout(Duration writeTimeout)
Define o tempo limite de gravação para uma solicitação a ser enviada. |
Métodos herdados de ClientOptions
Métodos herdados de java.lang.Object
Detalhes do construtor
HttpClientOptions
public HttpClientOptions()
Cria uma nova instância de HttpClientOptions.
Detalhes do método
getConfiguration
public Configuration getConfiguration()
Obtém o repositório de configuração que o HttpClient usará.
Returns:
getConnectTimeout
public Duration getConnectTimeout()
Obtém o tempo limite de conexão para uma solicitação a ser enviada.
O tempo limite de conexão padrão é de 10 segundos.
Returns:
getConnectionIdleTimeout
public Duration getConnectionIdleTimeout()
Obtém a duração do tempo antes que uma conexão ociosa seja fechada.
O tempo limite ocioso de conexão padrão é de 60 segundos.
Returns:
getHttpClientProvider
public Class getHttpClientProvider()
Obtém o HttpClientProvider tipo da implementação que deve ser usada para construir uma instância do HttpClient.
Returns:
getMaximumConnectionPoolSize
public Integer getMaximumConnectionPoolSize()
Obtém o tamanho máximo do pool de conexões usado pelo cliente HTTP subjacente.
Modificar o tamanho máximo do pool de conexões pode ter efeitos no desempenho de um aplicativo. Aumentar o pool de conexões máximo resultará na disponibilidade de mais conexões para um aplicativo, mas pode resultar em mais contenção para recursos de rede. É recomendável executar a análise de desempenho em diferentes tamanhos máximos de pool de conexões para encontrar a configuração certa para um aplicativo.
Esse tamanho máximo do pool de conexões não é uma configuração global, mas uma configuração de nível de instância para cada HttpClient criado usando esse HttpClientOptions.
O tamanho máximo do pool de conexões padrão é determinado pelo cliente HTTP subjacente. Definir o tamanho máximo do pool de conexões como nulo redefine a configuração para usar o padrão determinado pelo cliente HTTP subjacente.
Returns:
getProxyOptions
public ProxyOptions getProxyOptions()
Obtém o ProxyOptions que o HttpClient usará.
Returns:
getReadTimeout
public Duration getReadTimeout()
Obtém a duração do tempo limite de leitura usada ao ler a resposta do servidor.
O tempo limite de leitura padrão é de 60 segundos.
Returns:
getResponseTimeout
public Duration getResponseTimeout()
Obtém a duração do tempo limite de resposta usada ao aguardar a resposta de um servidor.
O tempo limite de resposta padrão é de 60 segundos.
Returns:
getWriteTimeout
public Duration getWriteTimeout()
Obtém o tempo limite de gravação para uma solicitação a ser enviada.
O tempo limite de gravação padrão é de 60 segundos.
Returns:
readTimeout
public HttpClientOptions readTimeout(Duration readTimeout)
Define a duração do tempo limite de leitura usada ao ler a resposta do servidor.
O tempo limite de leitura começa quando a primeira leitura de resposta é disparada após o recebimento da resposta do servidor. Esse tempo limite é disparado periodicamente, mas não disparará sua operação se outra operação de leitura tiver sido concluída entre quando o tempo limite for disparado e concluído.
Se readTimeout
for nulo PROPERTY_AZURE_REQUEST_READ_TIMEOUT ou um tempo limite de 60 segundos será usado, se for Duration menor ou igual a zero, nenhum período de tempo limite será aplicado à leitura da resposta. Ao aplicar o tempo limite maior de um milissegundo e o valor de readTimeout
será usado.
O tempo limite de leitura padrão é de 60 segundos.
Parameters:
Returns:
responseTimeout
public HttpClientOptions responseTimeout(Duration responseTimeout)
Define a duração do tempo limite de resposta usada ao aguardar a resposta de um servidor.
O tempo limite de resposta começa quando a gravação da solicitação é concluída e termina depois que a primeira leitura de resposta é disparada quando a resposta do servidor é recebida.
Se responseTimeout
for nulo PROPERTY_AZURE_REQUEST_RESPONSE_TIMEOUT ou um tempo limite de 60 segundos será usado, se for Duration menor ou igual a zero, nenhum tempo limite será aplicado à resposta. Ao aplicar o tempo limite, o maior de um milissegundo e o valor de responseTimeout
serão usados.
O tempo limite de resposta padrão é de 60 segundos.
Parameters:
Returns:
setApplicationId
public HttpClientOptions setApplicationId(String applicationId)
Define a ID do aplicativo.
O applicationId
é usado para configurar UserAgentPolicy para fins de telemetria/monitoramento.
Confira Azure Core: política de telemetria para obter informações adicionais.
Exemplos de código
Criar ClientOptions com a ID do aplicativo 'myApplicationId'
ClientOptions clientOptions = new ClientOptions()
.setApplicationId("myApplicationId");
Overrides:
HttpClientOptions.setApplicationId(String applicationId)Parameters:
setConfiguration
public HttpClientOptions setConfiguration(Configuration configuration)
Define o repositório de configuração que o HttpClient usará.
Parameters:
Returns:
setConnectTimeout
public HttpClientOptions setConnectTimeout(Duration connectTimeout)
Define o tempo limite de conexão para uma solicitação a ser enviada.
O tempo limite da conexão começa quando a solicitação tenta se conectar ao host remoto e termina quando a conexão é resolvida.
Se connectTimeout
for nulo PROPERTY_AZURE_REQUEST_CONNECT_TIMEOUT ou um tempo limite de 10 segundos será usado, se for Duration menor ou igual a zero, nenhum tempo limite será aplicado. Ao aplicar o tempo limite, o maior de um milissegundo e o valor de connectTimeout
serão usados.
O tempo limite de conexão padrão é de 10 segundos.
Parameters:
Returns:
setConnectionIdleTimeout
public HttpClientOptions setConnectionIdleTimeout(Duration connectionIdleTimeout)
Define a duração do tempo antes de uma conexão ociosa.
O tempo limite de ociosidade da conexão começa depois que a conexão conclui sua última solicitação de rede. Sempre que a conexão for usada, o tempo limite ocioso será redefinido.
Se connectionIdleTimeout
for nulo, um tempo limite de 60 segundos será usado, se for Duration menor ou igual a zero, nenhum período de tempo limite será aplicado. Ao aplicar o tempo limite, o maior de um milissegundo e o valor de connectionIdleTimeout
serão usados.
O tempo limite ocioso da conexão padrão é de 60 segundos.
Parameters:
Returns:
setHeaders
public HttpClientOptions setHeaders(Iterable
Define o Header.
Os cabeçalhos passados são aplicados a cada solicitação enviada com o cliente.
Isso substitui todos os cabeçalhos definidos anteriormente.
Exemplos de código
Criar ClientOptions com o cabeçalho 'myCustomHeader':'myStaticValue'
ClientOptions clientOptions = new ClientOptions()
.setHeaders(Collections.singletonList(new Header("myCustomHeader", "myStaticValue")));
Overrides:
HttpClientOptions.setHeaders(Iterable<Header> headers)Parameters:
setHttpClientProvider
public HttpClientOptions setHttpClientProvider(Class httpClientProvider)
Define o tipo da HttpClientProvider implementação que deve ser usada para construir uma instância do HttpClient. Se o valor não estiver definido ou for uma cadeia de caracteres vazia, o primeiro HttpClientProvider resolvido pelo ServiceLoader será usado para criar uma instância do HttpClient. Se o valor for definido e não corresponder a nenhum HttpClientProvider resolvido pelo ServiceLoader , um IllegalStateException será gerado ao tentar criar uma instância do HttpClient.
Parameters:
Returns:
setMaximumConnectionPoolSize
public HttpClientOptions setMaximumConnectionPoolSize(Integer maximumConnectionPoolSize)
Define o tamanho máximo do pool de conexões usado pelo cliente HTTP subjacente.
Modificar o tamanho máximo do pool de conexões pode ter efeitos no desempenho de um aplicativo. Aumentar o pool de conexões máximo resultará em mais conexões disponíveis para um aplicativo, mas pode resultar em mais contenção para recursos de rede. É recomendável executar a análise de desempenho em diferentes tamanhos máximos de pool de conexões para encontrar a configuração certa para um aplicativo.
Esse tamanho máximo do pool de conexões não é uma configuração global, mas uma configuração de nível de instância para cada HttpClient criada usando este HttpClientOptions.
O tamanho máximo do pool de conexões padrão é determinado pelo cliente HTTP subjacente. Definir o tamanho máximo do pool de conexões como nulo redefine a configuração para usar o padrão determinado pelo cliente HTTP subjacente.
Parameters:
Returns:
setProxyOptions
public HttpClientOptions setProxyOptions(ProxyOptions proxyOptions)
Define o ProxyOptions que o HttpClient usará.
Parameters:
Returns:
setReadTimeout
public HttpClientOptions setReadTimeout(Duration readTimeout)
Define a duração do tempo limite de leitura usada ao ler a resposta do servidor.
O tempo limite de leitura começa quando a primeira leitura de resposta é disparada depois que a resposta do servidor é recebida. Esse tempo limite é disparado periodicamente, mas não disparará sua operação se outra operação de leitura tiver sido concluída entre quando o tempo limite for disparado e concluído.
Se readTimeout
for nulo PROPERTY_AZURE_REQUEST_READ_TIMEOUT ou um tempo limite de 60 segundos será usado, se for Duration menor ou igual a zero, nenhum período de tempo limite será aplicado à leitura da resposta. Ao aplicar o tempo limite, o maior de um milissegundo e o valor de readTimeout
serão usados.
O tempo limite de leitura padrão é de 60 segundos.
Parameters:
Returns:
setResponseTimeout
public HttpClientOptions setResponseTimeout(Duration responseTimeout)
Define a duração do tempo limite de resposta usada ao aguardar a resposta de um servidor.
O tempo limite de resposta começa quando a gravação da solicitação é concluída e termina depois que a primeira leitura de resposta é disparada quando a resposta do servidor é recebida.
Se responseTimeout
for nulo PROPERTY_AZURE_REQUEST_RESPONSE_TIMEOUT ou um tempo limite de 60 segundos será usado, se for Duration menor ou igual a zero, nenhum tempo limite será aplicado à resposta. Ao aplicar o tempo limite, o maior de um milissegundo e o valor de responseTimeout
serão usados.
O tempo limite de resposta padrão é de 60 segundos.
Parameters:
Returns:
setWriteTimeout
public HttpClientOptions setWriteTimeout(Duration writeTimeout)
Define o tempo limite de gravação para uma solicitação a ser enviada.
O tempo limite de gravação não se aplica a toda a solicitação, mas a cada emissão enviada pela transmissão. Por exemplo, um corpo da solicitação que emite buffers 10
8KB
disparará 10
operações de gravação, o buffer de saída será verificado periodicamente para determinar se ele ainda está drenando.
Se writeTimeout
for nulo PROPERTY_AZURE_REQUEST_WRITE_TIMEOUT ou um tempo limite de 60 segundos será usado, se for Duration menor ou igual a zero, nenhum tempo limite de gravação será aplicado. Ao aplicar o tempo limite, o maior de um milissegundo e o valor de writeTimeout
serão usados.
O tempo limite de gravação padrão é de 60 segundos.
Parameters:
Returns:
Aplica-se a
Azure SDK for Java