주니어 백엔드 개발자가 반드시 알아야 할 실무 지식 - 10장 모르면 답답해지는 네트워크 기초 Book 백엔드 개발자는 네트워크를 깊게 전공하지 않아도 되지만, HTTP 요청 하나가 어떤 경로를 거쳐 서버에 도달하는지는 이해해야 한다. 최소한 알아야 할 것 DNS TCP handshake TLS HTTP keep-alive timeout load balancer / reverse proxy 왜 중요한가 외부 연동 문제나 ... 2026/03/26 Book, 주니어 백엔드 개발자가 반드시 알아야 할 실무 지식
주니어 백엔드 개발자가 반드시 알아야 할 실무 지식 - 9장 최소한 알고 있어야 할 서버 지식 Book 애플리케이션 코드만 안다고 서비스가 운영되지는 않는다. 백엔드 개발자는 최소한 서버가 어디서 돌고 어떤 자원을 쓰는지 정도는 이해해야 한다. 알아야 할 기본 요소 프로세스와 스레드 메모리 구조 파일 디스크립터 디스크와 로그 컨테이너/VM OS 레벨 제한 왜 필요한가 운영 문제는 종종 코드 바깥에서 시작한다. OO... 2026/03/25 Book, 주니어 백엔드 개발자가 반드시 알아야 할 실무 지식
주니어 백엔드 개발자가 반드시 알아야 할 실무 지식 - 11장 자주 쓰는 서버 구조와 설계 패턴 Book 마지막 장은 특정 기술보다 “구조를 어떤 문제를 해결하기 위해 도입하는가”에 초점이 있다. 자주 등장하는 구조 1. 계층형 구조 Controller Service Repository 가장 흔하지만, 계층 분리가 자동으로 좋은 설계를 의미하는 건 아니다. 2. 캐시 계층 DB 부하 절감 응답 속도 개선 하지만 일관성... 2026/03/25 Book, 주니어 백엔드 개발자가 반드시 알아야 할 실무 지식
백분위 통계 - 평균이 거짓말하는 이유와 히스토그램의 집계 오류 Notes 지연 시간의 평균이 20ms인데 사용자는 느리다고 한다. p99(요청을 빠른 순으로 줄 세웠을 때 99% 지점의 값)를 보니 3초다. 여기까지는 널리 알려진 이야기인데, 그 다음 질문들이 남는다. 여러 서버의 p99를 평균 내도 되는가. 대시보드의 p99는 실제 p99인가. 부하 도구가 보여주는 p99는 믿을 수 있는가. 셋 다 답이 “아니다”에 가깝... 2026/03/25 Notes, Common
ParityPay로 검증하는 결제 정합성 6 - 대사: "기관에 물어보지 못했다"와 "기관에 기록이 없다"는 다른 상태다 개인 프로젝트 Notes 3편은 외부 응답이 사라진 거래 하나를 어떻게 확정하는지에 관한 글이었다. 복구 작업이 기관에 물어보고, 답에 따라 성공·실패로 수렴시키고, 답을 못 들으면 사람에게 넘긴다. 그 절차가 끝나면 그 거래는 확정된 상태다. 그런데 확정됐다는 것과 맞다는 것은 다르다. 우리가 성공으로 확정한 거래가 기관에는 실패로 남아 있을 수 있고, 기관이 처리한 거래... 2026/03/24 Notes, ParityPay ParityPay로 검증하는 결제 정합성 6편
2026-03-22-TIL: 기술 의사결정은 사람보다 구조를 설계해야 한다 TIL 기술적인 의사결정 과정에서 자주 부딪히는 문제는 “무엇이 더 좋은가”보다 “왜 서로 설득이 되지 않는가”인 경우가 많다. 특히 팀 간 협업에서는 이런 상황이 반복된다. 같은 문제를 보고도 전혀 다른 결론에 도달한다. 기술적으로 충분히 설명했는데도 반대가 계속된다. 논쟁은 길어지지만 결론이 나지 않는다. 결국 감정 소모만 커진다. ... 2026/03/22 TIL, 2026-TIL
키 생성 병목을 추적해 구조를 바꾼 기록: Part 2 - SELECT 안에서 UPDATE가 일어나고 있었다 Notes Part 2. SELECT 안에서 UPDATE가 일어나고 있었다 1편에서는 INSERT가 병목처럼 보였지만, 실제로는 그 이전 단계에 더 근본적인 지연이 숨어 있을 가능성을 확인했다. 이번 글에서는 그 의심을 따라가며 왜 읽기처럼 보이는 구간에서 쓰기 비용과 락 경합이 발생했는지를 정리한다. 문제는 INSERT 직전에 숨어 있었다 처음 로그만 보... 2026/03/20 Notes, Common 키 생성 병목을 추적해 구조를 바꾼 기록 2편
2026-03-19-TIL: 간만에 서울나들이 TIL 오늘은 판교의 모회사에서 면접이 예정되어서 일찍부터 준비되는 대로 집을 나섰다. 수서역으로 가는 SRT 기차를 기다리는데 어떤 할머니 한 분이 나에게 말을 거셨다. 나는 처음에는 약간의 경계 섞인 태도로 대답했다. 하지만 정말 그냥 단순히 수서행 기차를 타야 하는데 기차를 놓쳐서 급하게 기차표를 끊으셨고, 단지 기차를 제시간에 타기를 바라는 사람이라는... 2026/03/19 TIL, 2026-TIL
페이지 캐시와 파일 IO - buffered와 direct, fsync가 실제로 하는 일 Notes write()가 성공으로 돌아왔다고 데이터가 디스크에 있는 것은 아니다. 데이터베이스의 커밋 설계, Kafka의 내구성 모델, 로그 유실 사고가 모두 이 사실에서 출발한다. 커널이 파일 쓰기를 어떻게 다루는지 보면 그 이유가 나온다. write()가 끝나는 곳은 메모리다 일반적인 write()는 페이지 캐시(커널이 파일 내용을 메모리에 들고 있는 ... 2026/03/19 Notes, OS
카카오 「MySQL Ver. 8.0 New Feature: Instant DDL Algorithm에 대한 이해」 리뷰 — 컬럼을 0.01초에 추가하는 대가는 '읽을 때마다 버전을 대조하는 것'이다 Tech Blog Review 원문: MySQL Ver. 8.0 New Feature: Instant DDL Algorithm에 대한 이해 — kakao tech, 2025-09-02 (2023-11 분석, 8.0.29 기준) 한 줄 요약 8.0.12의 Instant v1은 컬럼을 마지막에 추가만 됐고, 8.0.29의 v2는 어느 위치든 추가·삭제가 된다. 비결은 데이터 파일을... 2026/03/19 TechBlog, Kakao 빅테크 기술 블로그 리뷰 22편