일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- static
- docker
- 생성자 주입
- 열 속성
- 바이너리 카운팅
- java
- MSA
- KEVISS
- redis
- VUE
- jwt
- DI
- cache
- SQL
- 재정의
- lambda
- AOP
- 조합
- Spring
- Test
- stream
- equals
- 인덱스
- select_type
- 테스트 코드
- StringBuilder
- DDL
- 필드 주입
- jpa
- hashcode
- Today
- Total
목록Architecture (6)
백엔드 개발자 블로그
백엔드 채용 시장을 보면 우대사항에 대부분 MSA에 대한 이해도를 요구한다. 그리고 Monolithic 아키텍처로 규모가 큰 프로젝트를 하면서 유지보수의 어려움이 있어 MSA에 대해 학습을 진행하였고, 해당 노력을 통해 알게 된 내용을 정리하고자 한다. Monolithic Architecture 왼쪽처럼 하나의 DB와 하나의 프로젝트로 모든 서비스가 구성되어 있는 구조가 Monolithic 구조이다. Monolithic Architecture 장점 배포 과정이 간단하다.(파이프라인 구성이 쉽다) 하나의 프로젝트만 관리하니 배포하는 과정이 비교적 간단하고 쉽다. 통합 테스트를 하기 용이하다. 하나의 프로젝트에 전체 서비스의 로직이 같이 관리되기 때문에 통합 테스트에 유리하다. 프로젝트의 규모가 작을수록 유..
개념 MSA(Micro Service Architecture) : 하나의 서비스를 여러개의 서비스로 나눠서 응집도를 높이고 결합도를 낮춘 아키텍처이다. 등장 배경 요구사항 변화에 따른 빠른 대처(협업, 커뮤니케이션, 확장성, 유연성, 결합도, 응집도, 빌드, 배포)를 하기 위해서 개발된 아키텍처이다. Cloud + 컨테이너 가상화(Docker) + 오케스트레이션(k8s) 기술 보편화로 인해 자주 사용된다. 장단점 장점 장애가 다른 서비스에 영향을 주지 않는다. 필요한 서버에만 Scale-out 이 가능하여 비용면에서 효율적이다. 개발/유지보수 시 고려할 요소(다른 서비스에 주는 영향)가 줄어든다. 개발 시 각 서비스에 맞는 최적의 기술스텍 선택이 가능해진다. 배포가 덜 부담스럽다. (유지보수 할 때마다 ..
시작하기 앞서 도메인이 무엇인지, 도메인 주도 설계(Domain-Driven Design)란 무엇인지부터 가볍게 알고 넘어가자. 도메인이란 사전적 의미는 '영역', '집합'이다. '실세계에서 사건이 발생하는 집합' 이라고 생각하면 쉬울 것 같다. DDD에서 말하는 도메인은 비즈니스 도메인을 말하며, 비즈니스 도메인은 유사한 업무의 집합이다. 쇼핑몰을 예로 들면, 쇼핑몰에서는 손님들이 주문하는 도메인(Order Domain)이 있을 수 있고, 직원입장에선 옷들을 관리하는 도메인(Manage Domain)이 있을 수 있고, 결제를 담당하는 도메인(Payment Domain)이 있을 수 있다. 이렇게 여러가지 도메인들이 상호작용하며, 비즈니스 도메인별로 나누어 설계하는 것이 바로 도메인 주도 설계(이하 DDD..
시작하기 앞서 스프링 시큐리티에서 어플리케이션 보안을 구성하는 두 가지 영역에 대해 간단히 알아보자. 인증(Authentication)과 인가(Authorization) 대부분의 시스템에서는 회원을 관리하고 있고, 그에 따른 인증(Authentication)과 인가(Authorization)에 대한 처리를 해야 한다. 인증(Authentication) : 해당 사용자가 본인이 맞는지 확인하는 과정 인가(Authorization) : 해당 사용자가 요청하는 자원을 실행할 수 있는 권한이 있는가를 확인하는 과정 Spring Security는 기본적으로 인증 절차를 거친 후에 인가 절차를 진행하며, 인가 과정에서 해당 리소스에 접근 권한이 있는지 확인하게 된다. Spring Security에서는 이러한 인증과..