>웹 프론트엔드 >JS 튜토리얼 >JavaScript의 gzip 정적 압축 방법 정보_javascript 팁

JavaScript의 gzip 정적 압축 방법 정보_javascript 팁

WBOY
WBOY원래의
2016-05-16 19:21:531206검색

소규모 웹사이트의 경우 페이지를 10KB 줄이는 것은 아무 것도 아니지만 대규모 웹사이트의 경우 많은 트래픽이 추가됩니다... gzip 압축은 효과적이고 실행 가능한 방법이지만 Apache 지원이 필요합니다(Apache와 IIS는 포트 솔루션).
기존 JS 압축(주석 삭제, 추가 공백 삭제 등)에서 제공하는 압축률이 만족스럽지 못한 경우가 있습니다. 다행히 최신 브라우저에서는 http 헤더의 Content-Encoding=gzip 설정을 통해 압축 전송을 지원합니다. pass 서버 구성(예: apache)은 js에 대해 압축된 전송을 제공하거나 appfuse에 사용된 GZipFilter를 통해 tomcat도 이 기능을 제공할 수 있습니다.
이제 문제는 이 동적 압축으로 인해 CPU 사용량이 너무 높아진다는 것입니다. 이제 제가 생각하는 해결책은 정적 압축을 제공하는 것입니다(즉, js는 gzip.exe를 통해 미리 압축됩니다)

1. Tomcat의 애플리케이션은 아래에 설명되어 있습니다

1. .js 압축하여 gzip.exe를 통해 프로토타입.gzjs에 저장 2. 헤더 설정, 간단한 AddHeadersFilter를 작성하여 gzjs로 끝나는 모든 파일을 추가하고 web.xml에서 헤더 Content-Encoding=gzip 구성 설정

코드 복사 코드는 다음과 같습니다:
🎜> filter.AddHeaderFilter


                                                                   ~ > > 코드





코드 복사


코드는 다음과 같습니다.

>
Apache에서는 AddEncoding을 추가하여 .gzjs 파일의 헤더를 직접 매핑할 수 있습니다. 모든 처리는 gzip을 사용하여 12KB로 압축하며 총 압축률은 79%입니다.
2. js 압축 도구로 압축한 .js는 20KB이며 gzip을 사용하여 10KB로 압축했으며 총 압축률은 83%입니다.
3. 실제 프로젝트의 여러 js 파일이 439KB 파일로 병합되어 직접 압축되었습니다. gzip으로 85KB, 총 압축률 81%

4. 439KB를 js로 165KB로 압축한 다음 gzip으로 65KB로 압축하여 총 압축률 86%

기본적으로 js 압축 도구의 압축률을 무시하고 gzip 압축을 직접 사용할 수 있습니다.
gzip 다운로드 주소
http://www.gzip.org


Tomcat 압축 구성 예시 다운로드 주소:
http://www.blogjava.net/Files/badqiu/gziptest.rar
성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.