마이크로서비스 공통패턴
-
[Golang] 마이크로서비스 공통패턴개발언어/Go 2020. 10. 14. 01:00
마이크로 서비스를 구성할 때에는 아래와 같은 패턴을 고려해서 설계하는 것이 좋다. 1. 이벤트처리 기존에 알려진 위치에 있을 수도 있고 없을 수도 있는 서비스에 직접 연결하는 대신, Kafka 같은 큐에 이벤트를 보내서 처리하는게 좋다. 특정 시점에 에러가 발생했을 경우, 그 특정 시점의 에러 메세지를 기반으로 메세지에 추가적인 정보를 보완해서 큐에 다시 추가할 수 있다. 메세지를 처리하지 못할 때마다 에러를 추가하는 것이 중요한데, 처리 시도 횟수를 기억하고 있다가 특정 횟수를 초과하면 이 메세지를 진단 정보를 사용하기 위한 두 번째 큐로 옮기게끔 설계하는게 좋다. 이 두번째 큐는 일반적으로 dead letter 큐라고 하며, 이 처리 불가 큐는 메세지가 처음 시작된 큐에 의해 지정된다. 2. Time..