전체 글 427

Java virtual thread 기준

본문 중간의 쿠팡 추천 상품 구매시 쿠팡 파트너스에서 일정액의 수수료를 제공받습니다.Java virtual thread는 많은 수의 동시 작업을 기존 thread-per-request 스타일로 표현하기 위한 가벼운 java.lang.Thread 구현입니다. Java 21에서 정식 기능이 되었고, Java SE 25 문서 기준으로도 Thread.ofVirtual()와 Executors.newVirtualThreadPerTaskExecutor()가 표준 API로 제공됩니다.선택 기준은 분명합니다. 네트워크 호출, 파일 읽기, 데이터베이스 응답 대기처럼 대부분의 시간이 I/O 대기에 쓰이는 작업에는 잘 맞습니다. 반대로 CPU를 오래 점유하는 계산 작업을 더 빠르게 만들기 위한 병렬 처리 도구로 보면 안 됩니..

CSS :state() 기준

CSS :state()는 커스텀 요소가 가진 내부 상태를 CSS 선택자로 다룰 수 있게 해 주는 pseudo-class입니다. 일반 요소의 :hover, :checked, :disabled처럼 브라우저가 이해하는 상태를 선택하는 방식과 비슷하지만, 대상은 autonomous custom element가 직접 노출한 custom state입니다.2026년 9월 23일 확인 기준 MDN은 :state()와 CustomStateSet을 Baseline 2024의 Newly available 기능으로 설명합니다. 최신 브라우저에서는 사용할 수 있지만, 오래된 브라우저나 일부 WebView까지 지원해야 하는 서비스라면 CSS.supports("selector(:state(open))") 같은 확인과 fallbac..

Nginx HTTP/3 기준

본문 중간의 쿠팡 추천 상품 구매시 쿠팡 파트너스에서 일정액의 수수료를 제공받습니다.Nginx에서 HTTP/3를 켠다는 것은 단순히 HTTP/2 다음 버전을 선택하는 문제가 아니다. HTTP/3는 QUIC 위에서 동작하므로 TCP 443만 열려 있는 기존 HTTPS 구성과 달리 UDP 443, QUIC listen 설정, HTTP/3 모듈, TLS 1.3 조건을 함께 봐야 한다.핵심 기준은 세 가지다. 첫째, 현재 Nginx가 --with-http_v3_module로 빌드되었는지 확인한다. 둘째, HTTPS와 같은 포트에서 listen ... quic reuseport를 추가하고 UDP 443 경로가 실제로 열려 있는지 확인한다. 셋째, 0-RTT는 성능 옵션이지만 replay 위험이 있으므로 기본 설정..

리눅스 Landlock 기준

리눅스에서 애플리케이션이 자기 자신에게 추가 접근 제한을 걸어야 할 때가 있습니다. 예를 들어 파일 변환기, 플러그인 실행기, 개발 도구, 테스트 러너처럼 외부 입력을 다루는 프로그램은 작업에 필요한 디렉터리와 네트워크 동작만 허용하고 나머지는 막는 편이 안전합니다. Landlock은 이런 목적을 위해 제공되는 리눅스의 unprivileged access control 기능입니다.기준은 분명합니다. Landlock은 기존 권한을 더 넓히는 기능이 아니라, 프로세스가 이미 가진 권한 위에 더 좁은 규칙을 쌓는 기능입니다. 따라서 보안 경계를 새로 만드는 만능 컨테이너가 아니라, 애플리케이션 내부에서 파일 계층, 네트워크 포트, 일부 IPC 범위를 최소 권한으로 줄이는 도구로 보는 것이 정확합니다.Landl..

Java ScopedValue 기준

Java ScopedValue는 메서드 인자로 계속 넘기기 애매한 읽기용 컨텍스트를 동적 범위 안에서 안전하게 공유하기 위한 JDK 25 API입니다. 요청 ID, 인증 주체, 로케일처럼 호출 흐름 전체에서 읽어야 하지만 임의의 하위 코드가 값을 바꾸면 곤란한 데이터를 다룰 때 ThreadLocal의 대안으로 검토할 수 있습니다.핵심 기준은 세 가지입니다. 값은 바인딩된 실행 범위가 끝나면 원래 상태로 돌아가고, 바인딩은 스레드별로 적용되며, 자식 스레드로의 전달은 구조화된 동시성처럼 범위가 닫히는 구조에서만 자연스럽게 다룹니다.ScopedValue는 무엇인가일반적인 Java 코드는 데이터를 메서드 인자로 전달합니다. 하지만 어떤 값은 여러 계층을 지나 멀리 있는 콜백이나 내부 메서드에서만 필요할 수 있..

HTTP Content-Digest 기준

본문 중간의 쿠팡 추천 상품 구매시 쿠팡 파트너스에서 일정액의 수수료를 제공받습니다.Content-Digest는 HTTP 메시지 본문이 전송 중 바뀌지 않았는지 확인하기 위한 무결성 헤더입니다. 서버나 클라이언트가 본문 바이트를 해시해 헤더에 담고, 받는 쪽은 같은 방식으로 다시 계산해 값이 맞는지 확인할 수 있습니다.핵심 기준은 “무엇의 해시인가”입니다. Content-Digest는 현재 HTTP 메시지에 실려 온 content를 기준으로 계산합니다. 반면 Repr-Digest는 선택된 representation을 기준으로 계산합니다. 전체 응답 하나를 그대로 받을 때는 둘이 같을 수 있지만, range 응답이나 인코딩 조건이 끼면 두 값을 구분해야 합니다.Content-Digest는 무엇을 확인하나R..

Git replace 기준

본문 중간의 쿠팡 추천 상품 구매시 쿠팡 파트너스에서 일정액의 수수료를 제공받습니다.git replace는 기존 Git 객체를 직접 삭제하거나 고쳐 쓰지 않고, 다른 객체로 보이게 만드는 replace ref 기능입니다. 실제 객체 이름을 바꾸는 일반적인 history rewrite와 달리 refs/replace/ namespace에 별도 ref를 만들어 Git 명령이 객체를 읽을 때 대체 객체를 사용하게 합니다.기준은 분명합니다. 오래된 이력을 임시로 이어 붙여 보거나, 특정 객체를 수정한 것처럼 검증해야 하는 진단 상황에서는 유용합니다. 하지만 팀 전체가 공유하는 영구 수정이나 공개 브랜치 정리에는 보통 맞지 않습니다. replace ref는 로컬 저장소의 해석을 바꾸는 성격이 강하고, 모든 Git ..

라즈베리파이 PCIe 기준

Raspberry Pi 5에서 PCIe를 다룰 때 먼저 구분할 것은 세 가지입니다. 장치가 HAT+ 규격인지, 단순 저장장치로 쓸 것인지, NVMe에서 직접 부팅할 것인지입니다. 같은 M.2 SSD를 연결하더라도 이 구분에 따라 확인할 설정이 달라집니다.2026년 9월 20일 기준 Raspberry Pi 공식 문서는 Raspberry Pi 5에 단일 레인 PCIe FFC 커넥터가 있고, 기본 속도는 PCIe Gen 2.0 x1이라고 설명합니다. M.2 HAT+ 또는 M.2 HAT+ Compact 같은 HAT+ 장치는 자동 감지를 기대할 수 있지만, 일반 PCIe 어댑터나 자체 확장 보드를 쓴다면 수동 활성화와 부트로더 설정까지 확인해야 합니다.Raspberry Pi 5 PCIe는 어디에 쓰는가?Raspb..

Speculation Rules API 기준

Speculation Rules API는 사용자가 다음에 이동할 가능성이 있는 문서를 미리 가져오거나 미리 렌더링하도록 브라우저에 알려 주는 웹 플랫폼 기능입니다. 이미지나 스크립트 파일 하나를 먼저 받는 기능이 아니라, 미래의 페이지 이동 자체를 빠르게 만들기 위한 힌트에 가깝습니다.2026년 9월 18일 확인 기준 MDN은 이 기능을 Limited availability와 experimental로 표시합니다. 따라서 모든 브라우저에서 같은 결과를 기대하는 기능이라기보다, 지원 브라우저에서 점진적으로 성능을 개선하는 선택지로 보는 편이 안전합니다.Speculation Rules API는 어디에 쓰나이 API의 대상은 개별 하위 리소스가 아니라 문서 URL입니다. 그래서 다중 페이지 애플리케이션처럼 사용..

라즈베리파이 전원 공급 기준

본문 중간의 쿠팡 추천 상품 구매시 쿠팡 파트너스에서 일정액의 수수료를 제공받습니다.라즈베리파이는 모델에 따라 필요한 전원 용량과 주변기기 전류 한도가 다릅니다. 같은 USB-C처럼 보여도 Raspberry Pi 4와 Raspberry Pi 5의 권장 전원은 다르고, SSD나 USB 장치를 많이 붙이면 보드 자체보다 주변기기 전류가 먼저 문제가 될 수 있습니다.기준은 세 가지입니다. 보드 모델에 맞는 공식 권장 전원을 먼저 고르고, USB 주변기기와 팬의 전류 예산을 따로 계산하며, GPIO 헤더로 전원을 넣는 방식은 보호 회로와 동시 연결 조건을 이해할 때만 검토하는 것입니다.모델별 권장 전원은 어떻게 다를까2026년 9월 16일 확인 기준 Raspberry Pi 공식 문서는 모든 Raspberry P..

페이스북으로 공유카카오톡으로 공유카카오스토리로 공유트위터로 공유URL 복사