Software Engineering

[Hexagonal Architecture] 2. 구성

noahkim_ 2026. 6. 29. 15:13

1. 포트

  • 내부 애플리케이션이 외부와 소통하기 위해 정의해둔 인터페이스
  • ✅ 도메인과 어댑터 간 포트를 경계로 구분됨
  •  추상 API를 정의함
  •  목적에 맞는 프로토콜을 따름

 

Inbound Port

  • 외부에서 애플리케이션 안으로 들어오는 요청을 처리하는 어댑터
  • ex) Controller, Scheduler, Consumer 등

 

Outbound Port

  • 애플리케이션 내부에서 외부 시스템으로 나가는 어댑터
  • ex) JPA Repository, Mongo Repository, Kafka Producer, Email Sender

 

 

2. 어댑터

  • 포트를 실제 기술로 구현한 코드
  •  외부와 코어 사이에서의 언어를 통역해줌
  •  기술 변경 시 구현체만 바꾸면 됨

 

출처