Este documento aborda técnicas que você pode usar para melhorar o desempenho do seu aplicativo. A documentação da API específica que você está usando deve ter uma página semelhante com mais detalhes sobre alguns desses tópicos. Por exemplo, consulte a Página de dicas de desempenho para a API Google Drive.
Sobre o gzip
Esta biblioteca de cliente solicita a compactação gzip para todas as respostas da API e descompactações os dados para você. Embora isso exija mais tempo de CPU para descompactar os resultados, a redução dos custos de rede normalmente faz com que esse método valha a pena.
Resposta parcial (parâmetro "fields")
Por padrão, depois de processar as solicitações, o servidor envia de volta a representação completa de um recurso. Para um melhor desempenho, é possível pedir ao servidor para enviar apenas os campos realmente necessários e receber uma resposta parcial.
Para solicitar uma resposta parcial,
adicione o parâmetro Fields
padrão a qualquer método de API.
O valor desse parâmetro especifica os campos que você quer que sejam retornados.
Use esse parâmetro com qualquer solicitação que retorne dados de resposta.
No snippet de código abaixo,
o método GetRest
do serviço de descoberta é chamado.
O valor do parâmetro Fields
é definido como description,title
.
Como resultado, o objeto retornado vai incluir apenas os campos de descrição e título.
var service = new DiscoveryService();
var request = service.Apis.GetRest("calendar", "v3");
request.Fields = "description,title";
var result = request.Execute();
Observe como as vírgulas são usadas para delimitar os campos desejados,
e as barras são usadas para indicar os campos contidos nos campos pai.
Há outras opções de formatação para o parâmetro Fields
.
para mais detalhes, consulte as "Dicas de desempenho" página
na documentação da API que você está usando.
Atualização parcial (patch)
Se a API que você está chamando for compatível com o patch,
é possível evitar o envio de dados desnecessários ao modificar recursos.
Para essas APIs, é possível chamar o método Patch
e
fornecer os argumentos que você quer modificar para o recurso.
Para mais informações sobre a semântica de patches, consulte a página "Dicas de desempenho" na documentação da API que você está usando.
Lote
Se você estiver enviando muitas solicitações pequenas, poderá se beneficiar agrupamento em lotes o que permite que essas solicitações sejam agrupadas em uma única solicitação HTTP.