설명
AWS::Serverless::Api의 MinimumCompressionSize는 응답 압축 임계값을 정합니다. 생략하면 압축이 비활성화되며, 유효 범위는 0부터 10485760바이트까지입니다. 압축은 암호화나 필수 보안 통제가 아닙니다.
잠재적 영향
압축 효과가 큰 응답을 압축하지 않으면 전송량과 지연이 늘 수 있고, 작은 응답의 압축은 오히려 처리 비용을 늘릴 수 있습니다.
해결 방법
응답 특성에 맞는 유효한 임계값을 설정하고 배포 후 크기와 지연을 비교하세요. 클라이언트가 지원되는 Accept-Encoding 값을 보내는지도 확인하세요.
예시
예시의 114는 설명용 임계값입니다. 실제 로그 그룹 ARN과 서비스에 맞는 압축 기준을 지정하세요.
변경 전
yaml
AWSTemplateFormatVersion: '2010-09-09'
Transform: AWS::Serverless-2016-10-31
Resources:
ApiGatewayApi:
Type: AWS::Serverless::Api
Properties:
StageName: prod
TracingEnabled: true
CacheClusterEnabled: true
AccessLogSetting:
DestinationArn: arn:aws:logs:us-east-1:123456789012:log-group:my-log-group
Format: '{"requestId":"$context.requestId"}'
변경 후
yaml
AWSTemplateFormatVersion: '2010-09-09'
Transform: AWS::Serverless-2016-10-31
Resources:
ApiGatewayApi:
Type: AWS::Serverless::Api
Properties:
StageName: prod
TracingEnabled: true
CacheClusterEnabled: true
AccessLogSetting:
DestinationArn: arn:aws:logs:us-east-1:123456789012:log-group:my-log-group
Format: '{"requestId":"$context.requestId"}'
MinimumCompressionSize: 114