2025
- 25 May 개인 프로젝트 MSA 전환 - (6) Circuit Breaker와 Fallback을 활용한 장애 복구
- 19 May 개인 프로젝트 MSA 전환 - (5) Config Server를 활용한 설정 관리
- 10 May 개인 프로젝트 MSA 전환 - (4) OpenFeign을 활용한 서비스 간 통신 구현
- 26 Feb 개인 프로젝트 MSA 전환 - (3) Service Discovery + Api Gateway 적용
- 26 Feb 개인 프로젝트 MSA 전환 - (2) 멀티 모듈 구성
- 07 Feb 개인 프로젝트 MSA 전환 - (1) MSA에 대해 알아보자
- 09 Jan Redis Lettuce SETNX 정리
2024
- 14 Nov HikariCP + Tibero Network Timeout 해결하기
- 13 Nov VisualVM SSH 터널링 후 모니터링하기i
- 27 Oct HikariCP 설정
- 15 Sep Spring WebFlux의 주요 개념, Netty와 Tomcat의 차이 및 실용적 적용
- 13 Sep 도메인 엔티티, 영속성 엔티티 꼭 분리해야 되는가
- 10 Sep Kafka vs RabbitMQ
- 21 Aug Linux 자주 쓰는 명령어 정리
- 13 Aug 인덱스 설계와 쿼리 튜닝의 트레이드오프
- 05 Aug 서버 모니터링 구축[Docker, Prometheus, Grafana, Loki]
- 05 Aug Docker-Compose 명령어 정리
- 02 Aug AWS EC2 스왑메모리 할당
- 31 Jul Spring Security FilterChain 등록시 주의사항
- 30 Jul Docker 명령어 정리
- 30 Jul Component + MockBean 사용시 주의사항
- 05 May Mockito 프레임워크 정리
- 06 Apr MySQL 실수로 날린 데이터 복구하기
- 19 Mar 동서싱 이슈 해결 방법
- 28 Feb Graceful Shutdown 동작 과정
- 28 Feb JPA N+1 발생 원인 및 해결방법
- 19 Feb Transaction 롤백 동작 및 시나리오 정리
- 17 Feb Java HashMap 동작 방식
- 10 Feb Jenkins + Nginx 무중단 배포
- 28 Jan POI 라이브러리 OOM 해결과정
- 19 Jan 프로그래머스 - 미로 탈출
- 11 Jan MVC, MVP, MVVM 패턴 비교
- 10 Jan 이터레이터 패턴(Iterator Pattern)
- 09 Jan 옵저버 패턴(Observer Pattern)
- 08 Jan 전략 패턴(Strategy Pattern)
- 07 Jan 팩토리 메서드 패턴(Factory Method Pattern)
- 06 Jan 싱글톤 패턴(Singleton Pattern)
- 05 Jan 디자인 패턴 정리
- 01 Jan 가비지 컬렉션 정리
2023
- 06 Oct interview - operated
- 05 Oct interview - database
- 04 Oct interview - structure
- 03 Oct interview - spring
- 02 Oct interview - network
- 01 Oct interview - java
- 07 Sep chapter7 - 병렬 데이터 처리와 성능
- 05 Sep chapter5 - 스트림 활용
- 04 Sep chapter4 - 스트림 소개
- 03 Sep chapter3 - 람다표현식
- 02 Sep chapter2 - 동적 파라미터화 코드 전달하기
- 01 Sep chapter1 - 자바 8,9,10,11 무슨 일이 일어나고 있는가?
- 30 Jan Item 30 - 이왕이면 제네릭 메서드로 만들라
- 29 Jan Item 29 - 이왕이면 제너릭 타입으로 만들라
- 28 Jan Item 28 - 배열보다는 리스트를 사용하라
- 27 Jan Item 27 - 비검사 경고를 제거하라
- 26 Jan Item 26 - 로 타입은 사용하지 말라
- 25 Jan Item 25 - 톱레벨 클래스는 한 파일에 하나만 담으라
- 24 Jan Item 24 - 멤버 클래스는 되도록 static으로 만들라
- 23 Jan Item 23 - 태그 달린 클래스보다는 클래스 계층구조를 활용하라
- 22 Jan Item 22 - 인터페이스는 타입을 정의하는 용도로만 사용하라
- 21 Jan Item 21 - 인터페이스는 구현하는 쪽을 생각해 설계하라
- 20 Jan Item 20 - 추상 클래스보다는 인터페이스를 우선하라
- 19 Jan Item 19 - 변상속을 고려해 설계하고 문서화하라. 그러지 않았다면 상속을 금지하라
- 17 Jan Item 18 - 상속보다는 컴포지션을 사용하라
- 17 Jan Item 17 - 변경 가능성을 최소화하라
- 16 Jan Item 16 - public 클래스에서는 public 필드가 아닌 접근자 메서드를 사용하라
- 15 Jan Item 15 - 클래스와 멤버의 접근 권한을 최소화하라
- 14 Jan Item 14 - Comparable을 고려하라
- 13 Jan Item 13 - clone 재정의는 주의해서 진행하라
- 12 Jan Item 12 - toString을 항상 재정의하라
- 11 Jan Item 11 - equals를 재정의하려거든 hashCode도 재정의하라.
- 10 Jan Item 10 - equals는 일반 규약을 지켜 재정의하라
- 09 Jan Item 9 - try-finally 보다는 try-with-resources를 사용하라
- 08 Jan Item 8 - Finalizer와 Cleaner는 피하라
- 06 Jan Item 7 - 다 쓴 객체 참조를 해제하라
- 06 Jan Item 6 - 불필요한 객체 생성을 피하라
- 05 Jan Item 5 - 자원을 직접 명시하지 말고 의존 객체 주입을 사용하라
- 04 Jan Item 4 - 인스턴스화를 막으려거든 private 생성자를 사용하라
- 03 Jan Item 3 - private 생성자나 열거 타입으로 싱글턴임을 보증하라
- 02 Jan Item 2 - 생성자에 매개변수가 많다면 빌더를 고려하라
- 01 Jan Item 1 - 생성자 대신 정적 팩터리 메서드를 고려하라