멀티테넌시 개념과 적용 방안

멀티테넌시(Multi-tenancy) 개념과 적용 방안

멀티테넌시란? 멀티 테넌시(Multi-tenancy)는 소프트웨어 애플리케이션의 단일 인스턴스가 여러 고객(테넌트, tenant)에게 서비스를 제공할 수 있게 설계된 아키텍처입니다. 오로지 소프트웨어에 의해서 테넌트가 분리됩니다. 주로 SaaS 클라우드 서비스를 설계할 때 멀티테넌시 아키텍처를 고려합니다. 테넌트를 영어 사전에서 검색해보면 세입자, 임차인이라는 뜻이 검색됩니다. 즉, 우리가…

스프링 부트 로깅레벨 변경하기

[Spring Boot] 특정 클래스의 로깅 레벨 변경하기

스프링부트를 사용해 웹 애플리케이션을 운영하다 보면 특정 클래스의 로깅 레벨을 변경하고 싶을 때가 있습니다. 스프링부트에서 모든 클래스의 로깅 레벨을 변경하는 방법부터 시작해서 특정 패키지의 클래스들 그리고 특정 클래스 하나의 로깅 레벨을 변경하는 방법까지 알아보겠습니다. 모든 클래스의 로깅 레벨 변경 모든…

나의 필터가 두 번 적용된 이유

[Spring Boot] 나의 필터가 두 번 적용된 이유

OAuth2.0 구글 로그인 기능을 추가하던 중에 스프링 시큐리티(Spring Security)를 사용하여 JWT 인증을 구현하는 과정에서 한 번 적용되어야 할 필터가 두 번 적용되어 당황했던 경험이 있습니다. 이를 통해 알게 된 내용을 공유합니다. 필터 적용 이유 아래는 Spring Security의 설정을 관리하는 클래스입니다….

다형성 예제로 이해하기

다형성 예제로 쉽게 이해하기

객체 지향 프로그래밍의 꽃이라고 할 수 있는 다형성을 예제를 통해 쉽게 알아보겠습니다. 코드의 중복을 줄이고, 변경에 유연한 코드를 작성하기 위해서는 다형성을 이해할 필요가 있습니다. 다른 사람이 작성한 코드를 이해하거나 스프링과 같은 프레임워크를 이해하기 위해서도 반드시 알고 있어야 하는 필수적인 개념입니다….

클래스 의존성과 연관관계

클래스 의존성과 연관 관계 (다이어그램으로 표현하기)

개발자들은 의존성, 연관 관계에 대한 이야기를 흔하게 들을 수 있습니다. 저는 이 용어에 익숙하지 않을 때 많이 헷갈렸던 것 같습니다. 여러 가지 관계에 대해 다이어그램으로 표현하는 방법이 다양해서 혼란스러웠는데요. 저와 같은 경험을 하시는 분들이 계실 것 같아서 클래스의 다양한 관계들…

이상과 현실의 균형 잡기

이상과 현실의 타협에 대하여

이상과 현실 사이의 우리 우리는 언제나 이상과 현실 그 사이에 존재합니다. 가까워질 수는 있어도 잡힐 듯 잡히지 않는 게 바로 이상이죠. 여러분들은 꿈꾸고 있는 이상이 있나요? 현실은 어떤가요? 이상이라는 것은 현실이 있기 때문에 더 빛이 나는 것 같습니다. 어둠 속의…

복잡한 쿼리를 피하는 방법

복잡한 쿼리를 피하는 방법

여러분은 다른 사람이 작성한 복잡한 쿼리를 분석하느라 고생한 경험이 있으신가요? 저는 암호라고 해도 될 정도로 복잡한 쿼리를 만나서 매우 당황했던 기억이 있습니다. 하나의 쿼리가 다양한 일을 하고, 심지어 불필요한 작업들을 포함하기도 합니다. 쿼리를 몇 번이고 반복해서 읽으며 정확히 분석하지 않으면…

트러블슈팅, 원칙적 접근과 기록의 힘

트러블슈팅, 원칙적 접근과 기록의 힘

원칙적 접근은 온갖 시련으로부터 우리의 마음을 안전하게 지켜준다. 이 글은 문제의 원인을 파악하고 해결하는 과정에서 원칙을 세우고 기록하며 일을 처리할 때 얻는 이점에 대한 이야기다. 트러블슈팅을 소재로 하여 작성되었지만, 꼭 트러블슈팅이 아니더라도 원칙적 접근과 기록은 다양한 일에 적용할 수 있다는…

멘탈 관리 방법과 목표 달성 비결

멘탈 관리와 목표 달성의 비결: 성장 게이지

수많은 좌절과 면접 탈락, 실수와 실패를 딛고 성장하여 목표를 달성할 수 있게 해준 나의 필승 마인드, 멘탈 관리 방법을 공유한다. 험난한 세상이다. 앞으로도 셀 수 없이 찾아올 고난을 헤쳐나가기 위해 우리는 강한 멘탈을 가져야 한다. 멘탈 관리가 목표 달성의 기본이다….

JUnit 테스트 시작하기

JUnit 테스트 시작하기 (다운로드 및 설정)

Junit 테스트에 대해서 알고 있는 java 개발자 분들이 많을 것이다. 개발자들 사이에서 단위 테스트(Unit Test)가 중요하다는 말을 쉽게 들을 수 있다. Java 개발자가 JUnit 테스트의 첫 발을 뗄 수 있도록 돕기 위해 이 글을 작성했다. 시작이 반이다. 일단 시도해보길 권한다….