백그라운드 컴파일
· 약 4분
요약: Chrome 66부터 V8은 JavaScript 소스 코드를 백그라운드 스레드에서 컴파일하여 일반적인 웹사이트에서 메인 스레드가 컴파일에 소비하는 시간을 5%에서 20% 정도 감소시킵니다.
배경
Chrome은 41버전부터 V8의 StreamedSource
API를 통해 JavaScript 소스 파일을 백그라운드 스레드에서 구문 분석하는 기능을 지원해 왔습니다. 이를 통해 V8은 Chrome이 네트워크로부터 파일의 첫 번째 청크를 다운로드하자마자 JavaScript 소스 코드 구문 분석을 시작하고, Chrome이 파일을 네트워크로 스트리밍하는 동안 병렬로 구문 분석을 계속 진행할 수 있습니다. 이렇게 하면 파일 다운로드가 완료될 때쯤 V8은 JavaScript 구문 분석을 거의 마칠 수 있기 때문에 로드 시간 향상에 상당한 도움이 됩니다.