조회는 GET, 변경은 POST — 메서드를 다시 잡다
오래된 화면에서 변경이 GET으로, 조회가 POST로 뒤섞인 걸 바로잡았다. GET의 안전성·멱등성·캐시 가능성과 변경에 GET을 쓸 때 터지는 사고를 정리한다.
키워드가 정확히 일치하지 않아도 의미로 글을 찾아줍니다. 모든 처리는 브라우저 안에서 일어나며 — 서버·API 키·외부 전송이 없습니다. (검색 모델은 처음 한 번만 받고 이후 캐시됩니다.)
매일 자동으로 바뀌는 복습 6선 — Network · OS · Algorithm · Database 각 1편 + 랜덤 2편.
오래된 화면에서 변경이 GET으로, 조회가 POST로 뒤섞인 걸 바로잡았다. GET의 안전성·멱등성·캐시 가능성과 변경에 GET을 쓸 때 터지는 사고를 정리한다.

“소멸자” 같은 게 자바에도 있던데? C++의 소멸자(destructor)에 익숙하면, 자바의 finalize()를 “객체가 사라질 때 정리해주는 것”으로 기대하게 됩니다. 그런데 이펙티브 자바 아이템 8은 단호합니다: finalizer와 cleaner는 쓰지 마라. 왜 피해야 하나 finalizer(자바 9부터 deprecated)와 그 대안인...

흐름 제어(rwnd)와 혼잡 제어(cwnd)의 차이, 슬로스타트·혼잡 회피의 AIMD 톱니파, 손실 감지(타임아웃·3 dup ACK), Reno·CUBIC·BBR, 버퍼블로트와 BDP를 그림으로 설명합니다.
토큰 버킷과 슬라이딩 윈도우로 API 호출을 제한하는 원리, 사용자별 쿼터, 그리고 분산 환경에서 카운터를 일관되게 공유하는 방법을 다룬다.
운영자가 직접 정한 노출 순서를 정수 sort_order 컬럼으로 다룬다. 중간 삽입 비용, 간격 띄우기, 타이브레이커, 재정렬을 한 트랜잭션으로 묶는 설계를 정리한다.
같은 컬럼의 기본값을 애플리케이션과 DB 양쪽에서 정의하면 두 값이 어긋나며 데이터가 갈라진다. 권위의 단일 출처를 정하는 기준을 다룬다.

“자바는 GC가 있는데 메모리 누수가 나요?” 가비지 컬렉터(GC)가 있으니 메모리 관리는 신경 안 써도 된다고 생각하기 쉽습니다. 하지만 다 썼는데도 참조가 남아 있는 객체는 GC가 회수하지 못합니다. 이게 자바의 메모리 누수입니다. 직접 메모리를 관리하는 스택의 함정 이펙티브 자바의 유명한 예시, 직접 구현한 스택입니다. public Obj...
존재하지 않는 키를 반복 조회하면 캐시를 매번 뚫고 DB로 새는 캐시 관통이 발생한다. 빈 결과 캐싱과 블룸 필터로 이를 막는 원리를 다룬다.
프런트의 '5MB 이하' 검증은 신뢰할 수 없다. 컨테이너·프레임워크 한도와 애플리케이션 검증의 역할 분담, 확장자가 아닌 실제 타입을 보는 다층 방어를 정리한다.