Backend
Go 1.27의 HTTP/1 연결 재사용, 본문 정리 코드는 어디까지 줄일 수 있을까
Go 1.27은 닫힌 HTTP/1 응답의 남은 본문을 제한적으로 읽어 연결 재사용을 시도한다. Go 1.27.2 구현의 크기·시간 조건과 추가 수신 비용을 살펴보고, 기존 수동 정리 코드를 줄일 판단 기준을 정리한다.
만들며 배우고, 배운 것을 나눕니다.
더 나은 제품을 향한 개발의 기록.
작은 발견부터 깊이 있는 고민까지.
Go 1.27은 닫힌 HTTP/1 응답의 남은 본문을 제한적으로 읽어 연결 재사용을 시도한다. Go 1.27.2 구현의 크기·시간 조건과 추가 수신 비용을 살펴보고, 기존 수동 정리 코드를 줄일 판단 기준을 정리한다.
기여자 수와 특정 후원 목록만으로 오픈소스의 안전성과 지속성을 판단하기 어렵다. SQLite와 XZ의 공식 자료를 대조하고, 릴리스·지원·인계 경로에서 의존성의 유지 비용을 확인한다.
Chrome 155의 JPEG XL 지원을 계기로 사진의 압축률과 점진적 표시, 실제 사용 경로의 호환성을 살펴본다. 대체 이미지와 변환·저장 비용을 함께 검증해 도입 범위를 정할 기준을 제안한다.
mold 3.0은 기존 명령과 링크 성능을 유지하면서 구현을 Rust로 바꿨다. 메모리 접근 검사의 의미와 Cargo 전환 비용을 구분하고, 바이너리 사용자·CI 관리자·패키지 관리자가 교체 전에 확인할 조건을 정리한다.
체인 형태가 비슷해도 쿼리 빌더가 SQL 절을 조립하는지, 데이터 변환 순서를 표현하는지에 따라 결과가 달라진다. 상위 N개 조회 예제로 의미의 차이를 확인하고, 도입·리팩터링 때 생성 SQL과 결과 집합을 검증할 기준을 정리한다.
AI 리뷰의 탐지 능력과 팀에 남는 이해는 별도로 평가해야 한다. 코드 리뷰 대체 논문과 반론을 비교하고, 자동화할 검사·사람이 결정할 경계·도입 효과를 확인할 기준을 정리한다.