Rust는 왜 개발자들에게 사랑받을까?
써본 사람이 계속 쓰고 싶어 하는 언어 1위를 10년째 지키고 있는 Rust가 궁금해서 찾아봤습니다. 소유권과 빌림이 무엇을 해결하는지, 실제로는 어디에 쓰이는지 Java·TypeScript 개발자의 눈으로 정리합니다.

써본 사람이 계속 쓰고 싶어 하는 언어 1위를 10년째 지키고 있는 Rust가 궁금해서 찾아봤습니다. 소유권과 빌림이 무엇을 해결하는지, 실제로는 어디에 쓰이는지 Java·TypeScript 개발자의 눈으로 정리합니다.

유료 리포트 다운로드를 S3 Presigned URL로 구현했더니 중국 고객만 실패했습니다. GFW를 우회하는 방법과 유료 파일 다운로드를 구현할 때 알아야 할 것들을 정리합니다.

EC2의 세 접점(HTTP 서빙·서버 접근·배포 자동화)을 모두 아웃바운드 연결로 뒤집어 보안그룹 인바운드 규칙을 0개로 만드는 구성을 정리합니다.

요청을 보냈는데 PG가 아무 응답도 주지 않는다면 어떻게 해야 할까요? 성공도 실패도 알 수 없는 상태를 다루는 데서 시작해, 재시도와 서킷 브레이커를 거쳐 정합성 복구까지 다룹니다.

외부 API 호출 시 고려해야 할 점을 PG 연동을 예시로 다룹니다.

무한히 반복되는 루틴을 미리 다 저장해 둘 수는 없습니다. 규칙만 저장하고 인스턴스는 조회할 때 계산하는 방식을 요일 비트마스크와 JPA Converter로 구현합니다.

Spring AI VectorStoreChatMemoryAdvisor는 클라이언트가 보낸 conversationId를 필터 표현식에 그대로 결합합니다. 이 주입 지점 하나로 다른 사용자의 대화가 응답 컨텍스트에 흘러드는 과정을 분석합니다.

일회용 토큰은 정말 한 번만 쓰일 수 있을까요? Spring Security JdbcOneTimeTokenService의 TOCTOU 취약점으로 토큰 하나가 세션 두 개를 만드는 과정을 분석합니다.

하네스 엔지니어링은 AI 에이전트가 잘못할 수 없는 환경을 만드는 접근입니다. 그 원칙들을 실제 Spring Boot 프로젝트에 하나씩 적용해 봅니다.

아키텍처 규칙이 문서로만 존재하면 언젠가는 깨집니다. ArchUnit으로 규칙을 테스트 코드로 옮겨 실제 프로젝트에 적용한 경험을 다룹니다.

구글은 왜 MySQL의 데드락 탐지를 꺼 버렸을까요? InnoDB 소스 코드를 따라가며 탐지 알고리즘의 구조와 비용을 살펴봅니다.

새 LTS인 JDK 21에서 코드 작성에 직접 영향을 주는 변화들을 골랐습니다. 레코드 패턴과 switch 패턴 매칭, 순차 컬렉션, 가상 스레드를 하나씩 짚어 봅니다.
