아키텍처는 계획을 정리한것을 말한다. 즉, 소프트웨어를 분석하고 계획을 세워 정리한 설계도 같은것을 아키텍처라고 한다. 계층형 아키텍처 (레이어드 아키텍처) 여러가지 층으로 만들어 분리하는 단순한 방식의 아키텍처. 각 계층마다 로직이 다르고, 의존성이 단방향이다. 서비스 규모가 커지면 계층도 커지면서 유지보수가 힘들어지고, 개발속도도 저하되며 배포도 어렵다. 이벤트 기반 아키텍처 이벤트라고하는 상태변화에 대응하는 아키텍처이다. 예를들어, 유저가 버튼을 클릭해 원하는 상품페이지에 접근하는 이벤트가 발생할 수 있다. 상태변화에 대응하는 알림 서비스 등을 설계할 때 적합하다. 모든 요청은 비동기 처리 하기 때문에, 확장성에 좋지만, 순서를 보장하기는 어렵다. 이벤트 기반 아키텍처는 프로듀서, 브로커, 컨슈머로..