# HTTP/2 Push 중단 의도

> Clean Markdown view of GeekNews topic #16662. Use the original source for factual precision when an external source URL is present.

## Metadata

- GeekNews HTML: [https://news.hada.io/topic?id=16662](https://news.hada.io/topic?id=16662)
- GeekNews Markdown: [https://news.hada.io/topic/16662.md](https://news.hada.io/topic/16662.md)
- Type: GN+
- Author: [neo](https://news.hada.io/@neo)
- Published: 2024-09-08T09:58:59+09:00
- Updated: 2024-09-08T09:58:59+09:00
- Original source: [groups.google.com](https://groups.google.com/a/mozilla.org/g/dev-platform/c/vU9hJg343U8/m/4cZsHz7TAQAJ)
- Points: 1
- Comments: 1

## Topic Body

##### HTTP/2 Push 비활성화 계획

- **발표자**: Valentin Gosu
- **날짜**: 2024년 9월 5일

###### 요약
- **HTTP/2 Push 비활성화 계획**: 모든 플랫폼에서 HTTP/2 Push를 비활성화할 예정임
- **다른 브라우저의 상태**:
  - **Safari**: HTTP/2 Push 비활성화에 대한 공식 자료는 없지만, 로컬 테스트 결과 현재 버전에서 푸시 스트림을 거부함
  - **Chrome**: 2022년 9월 Chrome 106 버전에서 HTTP/2 Push 비활성화, `rel="preload"`와 103 Early hints를 대체 방법으로 권장함
- **Firefox의 상황**:
  - Firefox는 최근까지 HTTP/2 Push를 지원했으나, 최근 몇 달 동안 HTTP/2 Push로 인해 Firefox에서만 발생하는 웹 호환성 버그가 발견됨
  - 웹 서버와 웹사이트가 Firefox에서 테스트하지 않으면 이 기능이 웹사이트가 Firefox에서만 작동하지 않게 할 수 있음
  - HTTP/2 Push를 비활성화할 예정이지만, 구현은 당분간 남아 있을 예정임
  - 내년 봄 ESR 140 브랜치 전에 완전히 제거할 가능성이 높음

###### 문의사항
- **문의**: 우려 사항이 있으면 알려달라고 요청함

##### # GN⁺의 정리
- **HTTP/2 Push 비활성화**: Firefox가 HTTP/2 Push를 비활성화하는 이유와 다른 브라우저의 상태를 설명함
- **웹 호환성 문제**: HTTP/2 Push로 인해 발생하는 Firefox 전용 웹 호환성 문제를 해결하기 위함
- **대체 방법**: `rel="preload"`와 103 Early hints를 대체 방법으로 권장함
- **관련 프로젝트**: HTTP/2 Push를 대체할 수 있는 다른 기술이나 프로젝트를 고려할 수 있음

## Comments



### Comment 28694

- Author: neo
- Created: 2024-09-08T09:58:59+09:00
- Points: 1

###### [Hacker News 의견](https://news.ycombinator.com/item?id=41464334) 
- HTTP/2 Push가 실패한 이유를 설명하려던 사람들에게 사과가 없어서 불만임
  - Google의 전문가들이 HTTP/2 Push를 스펙에 포함시키려 했음
  - 스펙에 보수적으로 접근해야 함

- HTTP/2 Push 실패 이유가 설득력 없었음
  - Jake Archibald의 블로그 글이 브라우저 구현 문제를 지적했음
  - 브라우저가 이미 preload 링크를 지원함

- HTTP/3 0-RTT 시작과 103 Early Hints를 사용하면 속도를 회복할 수 있음
  - HTTP/1과 역호환 가능함

- HTTP/2 Push의 종말이 아쉬움
  - .NET과 nginx에서 제대로 구현되지 않았음
  - 캐시 다이제스트 부족이 문제였음
  - Chrome은 결국 이를 제거했음

- Firefox가 HTTP/2 Push를 제대로 처리하지 못함
  - 다른 브라우저는 이를 무시하지만 Firefox는 문제를 일으킴

- HTTP/2 Push가 널리 채택되지 않은 이유에 대한 의문
  - 브라우저 지원 부족 또는 CDN과의 호환성 문제일 가능성

- HTTP/2 Push를 REST API에 활용하는 아이디어가 있었음
  - 서버가 관련된 자원을 한 번에 가져와서 클라이언트에 푸시할 수 있음
  - JSON:API와 같은 다른 메커니즘으로도 구현 가능함

- HTTP/2 Push 관련 기사와 연구 링크 제공

- Mike Belshe와의 대화에서 HTTP/2 Push의 문제점이 논의되었음
  - '오버 푸시' 문제와 브라우저 캐시와의 소통 문제
  - HTTP Early Hints와 Resource Hints가 HTTP/2 Push의 필요성을 대체함
