마이크로서비스2 마이크로서비스 아키텍처 구축 CH.5 마이크로서비스의 통신 구현 5.1 이상적인 기술을 찾아서 여러 서비스가 얽힌 만큼 하위 호환성을 쉽게 해야 함. 명시적인 인터페이스를 사용해야 명시적 스키마를 사용하면, 노출하는 인터페이스가 명시적임을 보장한다. 가능성을 열어 두되, API를 기술 중립적으로 유지하자 “마이크로서비스를 구현하는 데 사용될 기술스택을 강요하는 통합기술은 피해야 한다” ⇒ 이해가 안됨. 내부 구현 및 세부 사항을 은닉하라 내부 구현 사항을 알게 되면 결합도가 증가함 내부 구현 사항 변경 시, 소비자도 변경을 해야하게 됨. → 기술 부채 증가 5.2 기술 선택 RPC (Remote Procedure Call) 원격 서비스를 로컬에서 호출한다. 같은 네트워크 상에서만 가능 클라이어느 측 코드를 쉽게 생성 가능하므로, 메서드 호출하듯이 사용 가능한 것이 가.. 2023. 12. 16. 마이크로서비스 아키텍처 구축 CH.4 마이크로서비스 통신 방식 4.1.1 성능 프로세스 내 호출 기본 컴파일러와 런타임은 호출에 있어서 전체 호스트 최적화를 수행 가능 프로세스 간 호출 패킷을 전송하기 때문에 최적화가 불가 프로세스 내 호출에 비해 오버헤드가 클 것으로 예상되지만, 확실히 측정 가능 데이터 센터 안에서 단일 패킷 왕복 시간 측정 API 호출은 다시 API 설계는 신중해야 한다. 프로세스 내부 호출 이를 테면, 매개변수 전달 시 포인터를 전달 전달 시 데이터를 복사하려고 더 많은 메모리 할당이 필요 없음 프로세스 간 호출 (네트워크) 데이터 전송을 위해 특정 형태로 직렬화 및 역직렬화 수행 페이로드 크기에 대해 주의해야 데이터 송수신양을 최대한 줄이기 파일 시스템으로 내려 파일 위치에 대한 참조 대신 전달 추상화, But 내부 사정을 충분히 고려하자 .. 2023. 11. 4. 이전 1 다음 반응형