푸른영혼의 별 | Tech Blog
Java Backend Engineer의 기술 블로그입니다.
Spring Boot, MSA, JPA, Kafka, Kubernetes 등 실무 경험을 공유합니다.
주요 프로젝트: Settlement MSA · ASAT · GitHub
Posts (총 208편 · 1 / 21 페이지)
-
-
*구조적 프로그래밍* 과 *자료구조* — *제어의 *틀* 과 *데이터의 *형태* 가 *서로를 *부른다*
“GoTo 는 *해로 운가?”* — 1968 년 Dijkstra 의 짧은 편지 가 프로그래밍 의 *형태 를 *바꾸었다. 그 8 년 후 Wirth 의 책 — 알고리즘 + 자료구조 = 프로그램. 둘은 *별개 의 주제 *같지만 — *깊이 들여다 보면 *같은 *질문 의 *두 *얼굴. 이 글은 그 연결.
-
*트랜잭션 경계* 의 설정 — *어디서 *시작 하고 *어디서 *끝나는가*
트랜잭션 *은 *모든 백엔드 의 *기본 도구. 모든 SQL *문 마다 자동 으로 따라온다. 그런데 경계 가 잘못 그어지면 — 데드락 / 데이터 부정합 / 느린 응답 / 분산 시스템의 *지옥 이 함께 온다. 이 글은 그 경계를 *어디에 *어떻게 그릴지 의 7 년 회고.
-
*소프트웨어 위기* 의 *진짜 *원인* — CPU · Memory · HDD · SSD 발전사 가 *불러온 것*
1968 년 NATO 컨퍼런스 에서 *처음 *“소프트웨어 위기” 라는 단어 가 등장했다. 컴퓨터는 빨라지는데, *소프트웨어는 *제 시간 / 제 예산 / 제 품질로 안 만들어진다. 그 후 60 년 이 지났지만 — 위기는 *형태를 바꾸어 *반복 된다. 이 글은 4 가지 *하드웨어 (CPU / Memory / HDD / SSD) 의 발전사 가 어떻게 *위기를 *만들었는지 의 연대 기.
-
어셈블리어와 JVM — *추상의 *두 층 사이* 의 *상관 관계 와 영향도*
어셈블리어 는 모든 코드 의 *바닥. JVM 은 그 바닥 위에 *세워진 *추상의 *층. 둘은 멀리 떨어져 *보인다. 그러나 실 행 순간 * 에는 *서로 *닿는다. 그 닿는 지점 을 알면 — Java 코드 의 *성능 의 비밀 이 보인다.
-
*Python 과 Java 의 *자료구조 / 문법 *4 단 깊이 비교* — *list vs ArrayList / dict vs HashMap / 시간 복잡도 / GC / GIL vs JVM Thread* 까지 *실전 선택 기준* 7 가지*
이 글은 Python 과 Java 의 자료구조 / 문법 / 런타임 모델 을 4 단 깊이 로 비교한다. “list = ArrayList 같은 거” 의 *얄팍한 정리 가 아니라, 내부 구현 / 시간 복잡도 / 메모리 / 동시성 까지 왜 다른지. 마지막에 실전 선택 기준 7 가지 로 어떤 상황에 어느 언어 가 *진짜 적합 한지* 정리.
-
컴퓨터 *공학* 과 컴퓨터 *과학* — 같은 듯 *다른 *두 학문의 *경계와 *만남*
컴공 출신 이세요? 라는 질문에 애매하게 답 한 적이 있다. 한국에선 컴퓨터 공학과 와 컴퓨터 과학과 가 섞여 쓰인다. 실제로 둘은 다르고, 만나고, 다시 갈라진다. 그 모양 — 이 글의 주제.
-
*Python vs Java* — 같은 알고리즘 *다른 성능* 의 *7 가지 결정적 이유*
코딩테스트 사이트의 같은 문제 를 Python 으로 2.3 초 에 푼다. 같은 알고리즘을 Java 로 옮기면 0.4 초 에 끝난다. 알고리즘 복잡도 는 같은 O(n log n).
왜 *6 배 차이가 나는가*?
-
*콘서트 예매 / 한정 특가 의 *트래픽 폭증* 을 *Spring Boot 로 어떻게 *대기열로 평탄화* 하는가 — *Virtual Waiting Room + Redis Sorted Set + Bucket4j + Resilience4j + WebSocket* 5 layer 의 *실전 구축법***
이 글은 콘서트 티켓 / 한정 특가 / 게임 오픈 같은 예고된 트래픽 폭증 을 Spring Boot 백엔드 가 터지지 않고 *공정하게 *처리 하는 5 layer 패턴 을 정리한다. Virtual Waiting Room (가상 대기실) → Token / Rate Limiting → Queue-based Admission → Optimistic Lock + 결제 분리 → CDN / Pre-warm 의 5 단계 의 *실전 구축법.
-
*백엔드 개발자가 알아야 할 *DB Connection Pool* — Spring Boot + HikariCP *11 가지 설정의 *진짜 의미*, *Pool sizing 계산 공식*, *Connection Leak 진단법*, 실전 *postmortem 4 건* 까지*
이 글은 Spring Boot 백엔드 개발자 가 DB Connection Pool 에 대해 “옵션 이름은 들어봤지만 *진짜 의미는 모르겠다” 단계 를 벗어나기 위한 *현장 deep-dive. HikariCP 11 가지 설정 / Pool sizing 계산 공식 / Connection Leak 진단 절차 / 실제 production postmortem 4 건 으로 구성.