php 편집기 Apple은 GoLang을 소개할 때 GoLang에 흥미롭고 실용적인 기능이 있다고 지적했습니다. 즉, JavaScript 파일을 제공할 때 조건부로 .js.gz 파일(존재하는 경우)을 제공하고 그렇지 않으면 제공합니다. .js 파일. 이 기능은 파일 크기를 효과적으로 줄이고, 웹 페이지 로딩 속도를 향상시키며, 사용자에게 더 나은 경험을 제공할 수 있습니다. 이 지능적인 파일 선택 메커니즘은 웹 개발에서 GoLang을 더욱 효율적이고 유연하게 만듭니다. 프론트엔드 개발이든 백엔드 개발이든 GoLang은 살펴볼 가치가 있는 훌륭한 프로그래밍 언어입니다.
제 배경은 대부분 반응/프론트엔드이지만 저는 GoLang을 사용하여 제공되고 Go 문서용 aws SDK를 사용하여 S3에서 가져오는 React 웹 애플리케이션의 성능을 개선하는 임무를 맡았습니다. 저는 압축 플러그인을 사용하여 S3에 배포된 번들의 .js 파일과 함께 gzip 압축 .js.gz 파일을 생성하는 것을 포함하여 작업을 수행하고 가능한 한 많은 최적화 기능을 사용하도록 Webpack을 구성했습니다.
내 질문은 Go와 aws SDK에 s3 버킷에서 파일을 가져올 때 먼저 파일의 gzip 압축 형식이 존재하는지 확인한 다음 파일을 가져오고 그렇지 않은 경우 일반 파일을 가져오는 방법이 있습니까? 이것이 이 문제를 해결하는 가장 좋은 방법입니까? Go에 런타임 압축을 위한 라이브러리가 있다는 것을 알고 있지만 미리 압축을 수행하는 것이 더 효율적인 것 같습니다.
Go 서버 부분은 매우 작으며 기본적으로 s3 클라이언트를 생성한 다음 해당 클라이언트에서 getObject 메서드를 사용하여 해당 버킷의 콘텐츠를 가져온 다음 본문이 포함된 http의 .write 메서드를 사용하는 버킷 파일을 가져오는 기능이 있습니다. 이 콘텐츠의.
네, 압축된 버전을 직접 보내주실 수 있습니다.
예는 다음과 같습니다.
으아악위 내용은 GoLang은 존재하는 경우 조건부로 .js.gz를 제공하고 그렇지 않은 경우 .js를 제공합니다.의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!