목차 1. HTTP 2. HTTP 특징 1) 클라이언트 서버 구조 2) 무상태 프로토콜 3) 비 연결성 4) HTTP 메시지 1. HTTP HyperText Transfer Protocol HTTP 메시지에 모든 것을 전송 기존에는 HyperText를 통한 연결과정에서 HTTP를 사용했지만 현재는 다른 여러 곳에서도 사용이 가능하다. HTML, TEXT MAGE, 음성, 영상, 파일 JSON, XML (API) 거의 모든 형태의 데이터 전송 가능 서버간에 데이터를 주고 받을 때도 대부분 HTTP 사용 HTTP 역사 HTTP/0.9 1991년: GET 메서드만 지원, HTTP 헤더X HTTP/1.0 1996년: 메서드, 헤더 추가 HTTP/1.1 1997년: 가장 많이 사용, 우리에게 가장 중요한 버전 R..
목차 1. 도메인 이벤트 2. 스프링 ApplicationEvent 3. 이벤트 소싱(Event Sourcing) 4. CQRS(명령 및 쿼리 책임 분리) 1. 도메인 이벤트 느슨한 결합과 강한 결합 외부 서비스가 정상이 아닐 경우 트랜잭션 처리를 어떻게 해야 할지 애매 외부 서비스 성능에 직접적인 영향을 받는 문제가 있다. 도메인 객체에 서비스를 전달하면 추가로 설계상 문제가 나타날 수 있다. 도메인 객체에 서비스를 전달할 떄 또 다른 문제는 기능을 추가할 때 발생한다. 비동기 이벤트를 사용하면 두 시스템 간의 결합을 크게 낮출 수 있다. 이벤트 이벤트가 발생한다는 것은 상태가 변경됐다는 것을 의미한다. 도메인 모델에서도 UI 컴포넌트와 유사하게 도메인의 상태 변경을 이벤트로 표현할 수 있다. 보통 '..
목차 1. 계층형 아키텍처 2. DTO(Data Transfer Object) 3. 의존 역전 원칙 4. 전략적 설계 - ANTICORRUPTION LAYER 1. 계층형 아키텍처 도메인 주도 설계의 아키텍처가 별도로 정의되어 있는 것은 아니지만 계층형 아키텍처, 클린 아키텍처, 헥사고날 아키텍처 처럼 도메인을 보호하는 아키텍처의 개념이 중요하다. 계층형 아키텍처의 비즈니스 로직은 도메인 모델에서 수행되도록 한다. Entity, Value Object 는 물론이고 비즈니스 로직이 Application Service 로 넘어가지 않도록 하는 Domain Service도 도메인 모델에 속한다. 1) Presentation Layer 사용자가 시스템을 사용할 수 있는 (화면) 흐름을 제공하고 제어 사용자가의 ..
목차 1. 전술적 설계 - ENTITY와 VALUE OBJECT 2. 전술적 설계 - AGGREGATE와 REPOSITORY 3. 전술적 설계 - SERVICE 1. 전술적 설계 - ENTITY와 VALUE OBJECT 도출한 도메인 모델은 Entity와 Value Object로 구현될 수 있다. 1) Entity 식별자를 갖는다. 객체의 상태 중 해당 객체의 고유한 성질을 표현할 수 있는 상태들을 식별자라고 부른다. 식별자는 엔티티 객체마다 고유해서 각 엔티티는 서로 다른 식별자를 갖는다. 식별자 생성 특정 규칙에 따라 생성 UUID 사용 값을 직접 입력 일련번호 사용(시퀀스나 DB의 자동 증가 칼럼 사용) 도메인 모델에 set 메서드 넣지 않기 changeShippingInfo() vs setShip..
- Total
- Today
- Yesterday
- spring rest docs
- HTTP 헤더
- 도메인 모델링
- mockito
- MySQL
- 학습 테스트
- http
- ATDD
- 육각형 아키텍처
- Spring Data JPA
- named query
- Git
- JPA
- TDD
- Spring Boot
- 이벤트 스토밍
- 마이크로서비스 패턴
- clean code
- 스프링 예외 추상화
- Stream
- java8
- kafka
- Spring
- 트랜잭셔널 아웃박스 패턴
- 클린코드
- Ubiquitous Language
- H2
- 폴링 발행기 패턴
- 계층형 아키텍처
- 스프링 카프카 컨슈머
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 31 |