BFF #1. 웹 애플리케이션 아키텍처의 진화

BFF #1. 웹 애플리케이션 아키텍처의 진화

모놀리식 아키텍처에서 일반적으로 애플리케이션은 WEB, WAS, DB의 3계층 구조로 이루어져 있다. 이렇게 개발된 각각의 서로 다른 애플리케이션은 아래와 같이 서로 독립적으로 실행되어 각자의 기능을 수행하였다.

이러한 아키텍처는 애플리케이션 간 독립성을 보장했다. 하지만 시간이 지나면서 서로 다른 애플리케이션에서 중복된 데이터와 비즈니스 로직을 갖게 되었고 이들을 공유하고 재사용하기 위한 요구가 생겨나 아키텍처가 조금 더 복잡해지게 되었다.

복잡도는 다소 높아졌지만, 이러한 아키텍처의 장점은 재사용 가능한 비즈니스 로직을 활용한 유연함이다. 새로운 애플리케이션을 구축하는 경우 이제 필요한 서비스를 직접 구현하지 않고 이미 구현해둔 서비스를 활용할 수 있게 되었다.

그리고 인터넷이 대중화되면서 인간-컴퓨터 상호작용에 대한 연구 또한 활발히 진행되었고, 이는 한 화면에서 다양한 사용자 요구사항을 충족시켜야 할 필요로 이어졌다. 결과적으로 화면이 서로 분리되어 각각의 기능을 하던 기존의 방식에서 벗어나 한 화면에서 여러 기능을 사용할 수 있도록 아키텍처는 아래와 같이 변경되었다.

사용자 인터페이스를 나타내는 화면은 그 자체로 여러 기능을 포함한 하나의 애플리케이션처럼 동작하게 되었다. 이러한 애플리케이션은 jsp, php, asp 등으로 구현되었는데, 모두 백엔드 비즈니스 로직 및 화면(UI) 영역까지 다룰 수 있다는 공통적인 특징이 있다.

다음 포스트에서 계속

참고자료

from http://wrynn.tistory.com/42 by ccl(A) rewrite - 2021-11-10 03:01:06