Next.js useLinkStatus로 느린 링크에만 진행 상태 보여주기
Link를 눌렀지만 navigation이 아직 시작되지 않아 멈춘 것처럼 보일 때, useLinkStatus로 해당 링크에만 정확한 진행 상태를 표시하는 방법을 설명합니다.
글 읽기개발하다 막혔던 순간부터 해결하며 배운 내용까지, 차근차근 편안하게 풀어갑니다.
Link를 눌렀지만 navigation이 아직 시작되지 않아 멈춘 것처럼 보일 때, useLinkStatus로 해당 링크에만 정확한 진행 상태를 표시하는 방법을 설명합니다.
글 읽기Link를 눌렀지만 navigation이 아직 시작되지 않아 멈춘 것처럼 보일 때, useLinkStatus로 해당 링크에만 정확한 진행 상태를 표시하는 방법을 설명합니다.
Popover API의 top layer와 light dismiss를 modal 동작으로 오해하지 않도록, action menu와 확인 dialog의 상호작용 경계를 구분합니다.
nullable column의 UNIQUE constraint가 중복 NULL을 허용하는 기본 규칙과, PostgreSQL 15 이상에서 NULLS NOT DISTINCT를 선택할 기준을 예제로 설명합니다.
여러 worker가 같은 작업을 집어 갈 때 SKIP LOCKED가 대기를 줄이는 방식과 일반 조회에 사용하면 안 되는 이유를 예제로 설명합니다.
응답 timeout 뒤에도 executor 작업이 계속되는 이유를 CompletableFuture의 완료 상태와 실제 작업 중단으로 나누어 설명합니다.
여러 coroutine을 함께 실행할 때 TaskGroup의 실패 전파와 cancellation 규칙을 이해하고 부분 결과를 잘못 성공 처리하지 않는 방법을 설명합니다.
긴 작업 branch에서 같은 충돌을 여러 번 해결할 때 rerere가 무엇을 기록하고, 재사용된 결과를 어떻게 검토해야 하는지 설명합니다.
App Router에서 문서 title이 빠지거나 예상한 suffix가 붙지 않을 때 layout과 page의 metadata 상속 경계를 확인하는 방법을 설명합니다.
reset이나 rebase 뒤 branch에서 보이지 않는 로컬 커밋을 reflog로 찾고, 확인용 branch를 만들어 안전하게 복구하는 순서를 설명합니다.
SQL의 NULL이 빈 문자열이나 0과 다른 값인 이유를 이해하고 IS NULL과 IS DISTINCT FROM을 상황에 맞게 사용하는 방법을 예제로 설명합니다.
응답 지연을 GC 탓으로 단정하지 않고 pause 시각, allocation rate와 GC 뒤 live set을 연결해 원인을 좁히는 방법을 설명합니다.
검색어가 빠르게 바뀔 때 이전 요청이 나중에 도착해 최신 화면을 덮는 이유와 Effect cleanup으로 오래된 결과를 무시하는 방법을 설명합니다.
Server Component에서 서로 독립인 조회가 순서대로 기다리는 원인을 찾고, Promise를 일찍 시작해 안전하게 병렬 처리하는 방법을 예제로 설명합니다.
서버는 이벤트를 즉시 보냈는데 브라우저에는 모여서 도착하는 원인을 찾고, SSE 경로에서만 proxy buffering을 조정하는 방법을 설명합니다.
반복 작업 중 파일 descriptor가 늘어나는 원인을 찾고 with 문으로 정상·예외 경로의 파일 수명주기를 한곳에 두는 방법을 설명합니다.
같은 객체 안에서 @Transactional 메서드를 호출할 때 기본 proxy를 지나지 않는 이유와 트랜잭션 경계를 별도 서비스로 분리하는 방법을 설명합니다.
컨테이너 시작과 서비스 준비 완료의 차이를 이해하고 healthcheck와 제한된 애플리케이션 재시도로 초기 연결 실패를 줄이는 방법을 설명합니다.
느린 저장 대상에 데이터를 계속 쓸 때 메모리가 증가하는 이유와 pipeline 또는 drain으로 backpressure를 지키는 방법을 예제로 설명합니다.
Git / 대용량 파일 이력: 어떤 조건에서 동작하는지와 먼저 알아둘 사실, 실제 확인 기준을 설명합니다.
proxy_next_upstream이 언제 다음 server로 요청을 넘기는지 확인하고, non_idempotent option이 쓰기 중복을 만들 수 있는 이유를 설명합니다.