| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 1 | 2 | 3 | 4 | |||
| 5 | 6 | 7 | 8 | 9 | 10 | 11 |
| 12 | 13 | 14 | 15 | 16 | 17 | 18 |
| 19 | 20 | 21 | 22 | 23 | 24 | 25 |
| 26 | 27 | 28 | 29 | 30 |
- 호치민
- Redis
- 한빛미디어
- 양꼬치
- 니코호텔
- 연어포케
- 베트남여행
- 회고
- 호치민여행
- 핑크성당
- 무이네 사막투어
- 호치민 무이네
- 혼공컴운
- 포케맛집
- 자료구조
- 기술부채
- 밤리단길 맛집
- OS
- 혼공학습단
- 합정 맛집
- 혼공네트
- 호치민 여행
- 혼공학습단12기
- 합정맛집
- 무이네투어
- cs
- 호치민 맛집
- Docker
- 합정포케
- 혼공컴운11기
- Today
- Total
목록전체 글 (49)
경험은 나의 것
2025년은 무언가를 크게 성취한 해라기보다, 오랫동안 미뤘던 것들을 직접 해보기 시작한 해였다. 생각을 행동으로 옮기며, 실행하는 관성을 만들려고 노력했다.1. 조직과 문화: CVS에서 Git으로우리 팀(사실상 회사 전체)은 정보처리기사 필기 서적에나 존재할 법한 구시대의 유산인 CVS를 사용하고 있었다. 신규 프로젝트를 시작하며 더 이상은 미룰 수 없다고 판단했고, 팀에 Git 도입을 제안했다. 단순히 최신 트렌드여서가 아니라, 기존 방식이 가진 구조적 결함이 팀의 생산성에 저하되었기 때문이다.논리와 근거를 통한 설득: 거창한 지표는 아니더라도, 파일 단위로 관리되는 CVS에서 커밋이 깨질 때마다 발생하는 비효율과 이력 추적의 불확실성을 가감 없이 짚었다. "왜 지금 바꿔야 하는가"에 대해 내가 느낀..
1. 배경: 세션 탈취 글을 쓰고 나서spring: session: store-type: redis지난 글에서 Spring Session이 Filter와 Decorator 패턴으로 세션 저장소를 Redis로 바꿔치기하는 과정을 알아봤다."Filter가 요청을 가로챈다고 했는데, 그럼 요청은 정확히 어디서부터 시작해서 Controller까지 갈까"그래서 이번엔 Spring 코드를 직접 까보면서 HTTP 요청의 전체 흐름을 파악해보자.2. 디버깅으로 흐름 추적하기일단 간단한 Controller를 하나 만들고, Get 요청 후 Call Stack을 확인해봤다.@RestControllerpublic class TraceController { @GetMapping("/trace") public ..
1. yml 파일의 설정 한 줄로 바뀌는 세션 위치spring: session: store-type: redis # 이 한 줄이 핵심! redis: namespace: spring:session data: redis: host: localhost port: 6379현재 진행 중인 프로젝트에서 무중단 배포(Blue/Green) 환경 구축과 세션 정합성 문제를 해결하기 위해 Redis를 도입하게 되었다.build.gradle에 Spring Session Data Redis 의존성을 추가하고, application.yml에 간단한 설정 몇 줄을 추가했다. 기존 비즈니스 로직 코드를 단 한 줄도 수정하지 않았는데, 세션 저장소가 Tomcat 메모리에서 Redis로..