ASP.NET 코어 파일 응답 압축 의 일반적인 오류
추가 적 인 대가 가 거의 필요 하지 않 습 니 다.Brotil 압축 알고리즘 은 사이트 의 약 20%정적 자원 로드 성능 을 향상 시 킬 수 있 습 니 다.
Gzip/Brotil 압축 사용 하기
Gzip 은 더 좋 은 user-agent 호환성 을 가지 고 있 으 며,Brotli 는 더 좋 은 성능 을 가지 고 있 습 니 다.
그래서 우 리 는 보통 ASP.NET Core 사이트 에서 이 두 가지 압축 을 동시에 사용 해 야 한다.
Gzip 압축 과 Brotli 압축 을 어떻게 구분 합 니까?
사이트 에서 Brotli 압축 을 사용 할 때 서버 가 머리 를 되 돌려 달라 고 요청 합 니 다.Content-Encoding 에는 br 글자 가 포함 되 어 있 습 니 다.그렇지 않 으 면 gzip 입 니 다.
오류 2:Fastest 단계 의 Brotli 압축 사용 하기
만약 마이크로소프트 공식 문서 나 다른 중국어 자원 을 읽 고 참고 했다 면,예 를 들 어:
ASP.NET 코어 의 응답 압축 - MS Doc
있다 - Cnblogs
그러면 코드 에서 아래 와 같이 압축 기능 을 사용 할 수 있 습 니 다.
쓰기 1:기본 압축 동작 사용 하기(프레임 워 크 는 Brotli 와 Gzip 기능 을 암시 적 으로 추가 합 니 다)
public class Startup
{
public void ConfigureServices(IServiceCollection services)
{
services.AddResponseCompression();
}
public void Configure(IApplicationBuilder app, IHostingEnvironment env)
{
app.UseResponseCompression();
}
}
쓰기 2:압축 기능 추가
public void ConfigureServices(IServiceCollection services)
{
services.AddResponseCompression(options =>
{
options.Providers.Add<BrotliCompressionProvider>();
options.Providers.Add<GzipCompressionProvider>();
options.Providers.Add<CustomCompressionProvider>();
options.MimeTypes =
ResponseCompressionDefaults.MimeTypes.Concat(
new[] { "image/svg+xml" });
});
services.Configure<BrotliCompressionProviderOptions>(options =>
{
options.Level = CompressionLevel.Fastest;
});
}
쓰기 3:사용자 정의 BrotliCompassionProvider
public class BrotliCompressionProvider : ICompressionProvider
{
public string EncodingName => "br";
public bool SupportsFlush => true
public Stream CreateStream(Stream outputStream)
{
return new BrotliStream(outputStream,CompressionLevel.Fastest);
}
}
불 행 히 도 상기 세 가지 표기 법 은 모두 Brotil 압축 알고리즘 의 장점 을 발휘 하지 못 했다.이들 의 공통점 은 모두 Compression Level.Fastest 를 사용 했다 는 것 이다. 압축 단계.
반면 Compression Level.Fastest 등급 에 서 는 Brotil 과 Gzip 의 압축 성능 이 거의 다 릅 니 다.
참고:ASP.NET Core 에서 brotli 압축 사용 하기
오류 3:Optimal 급 Brotli 압축 사용
Compression Level 은 세 개의 매 거 진 값 만 있 습 니 다:Fastest/NoCompression/Optimal.
Fastest 등급 이 소 용이 없 으 니 우 리 는 Optimal 로 바 꿀 수 밖 에 없다.
최 적 실천:4 또는 5 단계 의 Brotli 압축 사용
...에 있다 Introducing Support for Brotli Compression 이 글 에서 작 가 는 서로 다른 등급 의 Brotil 의 압축 시간 에 대해 평 가 를 했 는데 바로 아래 의 그림 이다.
이 그림 을 살 펴 보면 Brotil 의 압축 품질 은 사실 1~11 개의 등급 이 있다.
브 로 틀 리 의 압축 단 계 를 어떻게 정의 합 니까?정 답 은 단계 에 대응 하 는 정 수 를 Compression Level 로 직접 바 꾸 는 것 입 니 다.
비록 이런 표기 법 은 매우 기괴 해 보이 지만.NET 소스 코드 를 고찰 함으로써 이런 표기 법 이 가능 하 다 는 것 을 확실히 알 수 있다.
이상 은 ASP.NET Core 파일 응답 압축 의 일반적인 사용 오류 에 대한 상세 한 내용 입 니 다.ASP.NET Core 파일 응답 압축 에 관 한 자 료 는 다른 관련 글 을 주목 하 십시오!
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
.Net Core Excel 템플릿 읽기 Excel 파일 내보내기텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.