106
1부
역학
모든 도구가 갖추어졌다 해도 가끔 생각날 때마다 사용한다면 피트니스 함수 구실을 할 수 없
다. 피트니스 함수는 서로 긴밀하게 엮어 지속적으로 검증해야 한다.
4.4
통합 아키텍처 통합 아키텍처
피트니스 함수는 개별 애플리케이션에 적용하는 경우가 많지만, 사실상 아키텍처 생태계에서
거버넌스가 필요한 모든 부분에 적용할 수 있다. 각 애플리케이션의 관심사에서 벗어난 문제가
늘어날수록 일반화된 솔루션은 줄어든다. 통합 아키텍처의 본질은 일반화라는 원칙에 대항해
서로 다른 특수한 부분들을 통합하는 것이다. 그러나 통합 아키텍처의 피트니스 함수는 일반적
인 패턴이 몇 가지 존재한다.
4.4.1 4.4.1
마이크로서비스의 마이크로서비스의 통신통신 거버넌스 거버넌스
[그림
2
-
3
]의 순환 구조와 테스트 방식을 본 아키텍트는, 마이크로서비스 같은 분산 아키텍처
에 동일한 기법을 적용할 수 있으리라는 환상을 갖기 쉽다. 이러한 희망은 아키텍처의 이질성
이라는 특성에 가로막힌다. 컴포넌트 순환 테스트는 특정 언어로 작성된 단일 코드베이스와 테
스트 도구로 진행하는 컴파일 시점 검사다. 그러나 마이크로서비스를 다루려면 하나의 도구만
으로는 역부족이다. 각 서비스는 서로 다른 기술 스택, 리포지터리, 통신 프로토콜, 기타 여러
변수 속에서 제작된다. 따라서 마이크로서비스에 피트니스 함수를 적용할 턴키 도구를 찾기란
거의 불가능하다.
아키텍트가 피트니스 함수를 직접 작성하는 경우는 많다. 그러나 프레임워크 전체를 직접 만들
필요는 없다. 너무 ...