이 문서에서는 애플리케이션 성능을 개선하는 데 사용할 수 있는 기술을 설명합니다. 사용 중인 특정 API의 문서에는 이러한 주제 중 일부에 관한 자세한 내용이 포함된 유사한 페이지가 있어야 합니다. 예를 들어 Google Drive API의 성능 도움말 페이지를 참고하세요.
gzip 정보
이 클라이언트 라이브러리는 모든 API 응답에 gzip 압축을 요청하고 데이터를 자동으로 압축 해제합니다. 이 경우 결과를 압축 해제하려면 CPU 시간이 추가로 필요하기는 하지만 대신에 네트워크 비용을 절감할 수 있다는 장점이 있습니다.
부분 응답 (fields 매개변수)
기본적으로 서버에서는 요청을 처리한 후에 전체 리소스 표현을 반환합니다. 더 나은 성능을 위해 서버에 필요한 필드만 전송하도록 요청하여 부분 응답을 받을 수 있습니다.
부분 응답을 요청하려면 API 메서드에 표준 Fields
매개변수를 추가합니다.
이 매개변수의 값은 반환할 필드를 지정합니다.
응답 데이터를 반환하는 모든 요청에서 이 매개변수를 사용할 수 있습니다.
다음 코드 스니펫에서는 디스커버리 서비스의 GetRest
메서드가 호출됩니다.
Fields
매개변수의 값은 description,title
로 설정됩니다.
따라서 반환된 객체에는 설명 및 제목 필드만 포함됩니다.
var service = new DiscoveryService();
var request = service.Apis.GetRest("calendar", "v3");
request.Fields = "description,title";
var result = request.Execute();
쉼표는 원하는 필드를 구분하는 데 사용되고 슬래시는 상위 필드에 포함된 필드를 나타내는 데 사용됩니다.
Fields
매개변수에는 다른 형식 지정 옵션도 있습니다. 자세한 내용은 사용 중인 API의 문서에 있는 '성능 도움말' 페이지를 참고하세요.
부분 업데이트 (패치)
호출하는 API가 패치를 지원하는 경우 리소스를 수정할 때 불필요한 데이터가 전송되지 않도록 할 수 있습니다.
이러한 API의 경우 Patch
메서드를 호출하고 리소스에 대해 수정하려는 인수를 제공할 수 있습니다.
패치 시맨틱스에 관한 자세한 내용은 사용 중인 API의 문서에 있는 '성능 도움말' 페이지를 참고하세요.
일괄
작은 요청을 많이 전송하는 경우 이러한 요청을 단일 HTTP 요청으로 번들로 묶을 수 있는 일괄 처리를 사용하는 것이 좋습니다.