2017-04-11 4 views
4

마이크로 서비스간에 작업을 조정할 때 더 좋은 옵션은 무엇입니까?AWS SNS와 AWS의 단계별 기능

예를 들어 고객 정보를 처리하고 다른 마이크로 서비스를 알리는 마이크로 서비스가있는 경우 마이크로 서비스간에 워크 플로우 (AWS 단계)를 작성하거나 SNS를 사용하는 것이 더 낫습니까?

AWS 단계가 내 람다 함수와 SNS를 연결하지 않을 것이라고 생각합니다.

답변

4

AWS 단계 함수은 AWS 람다 함수를 실행하는 단계 기계입니다. 귀하의 작업이 "다음,이"활동, 다음 단계 기능이 좋은 옵션이 될 수 있습니다. 여기에는 다음 단계를 결정하는 논리가 포함되며 자동으로 재시도가 처리됩니다. 아마존 심플 워크 플로우 (SWF)의 최신 버전입니다.

Amazon Simple Notification Service (SNS)도 람다 함수를 트리거 할 수 있지만 논리 나 재 시도는 처리하지 않습니다. 이는 여러 가입자가 주제에서 동일한 메시지를 수신하는 팬 아웃 (예 : 다중 람다 기능을 트리거하거나 여러 통보를 보내는 경우)에 적합한 분리 된 서비스에 적합합니다. 그것은 기본적으로 Lambda가 가입자 유형 중 하나 인 공공/가입 서비스입니다.

선택 사항은 사용 사례에 따라 다릅니다. 단계 기능을 사용하도록 사물을 재 설계하지 않으려면 SNS를 통해 알림을 보냅니다. 람다 기능을 트리거하는 것보다는 알림 (예 : 전자 메일)을 보내려면 SNS를 사용하십시오.

현재 SNS는 모든 지역에서 사용할 수있는 단계 기능이 없으므로 선택 사항에 영향을 미칠 수 있습니다.

4

원하는 조정 유형에 따라 다릅니다. 동기식 또는 비동기식.

는 동기 당신이 정말 그들 사이에 약간의 조율을 원하는 경우, 다음 아마존 간단한 알림 서비스 (SNS) 도움이되지 것입니다 및 AWS 단계 기능가 갈 수있는 방법이 될 것입니다 경우.

그러나 비동기 적이며 마이크로 서비스를 알리거나 호출하려는 경우 SNS가 더 적합 할 것입니다.

질문에서 "다른 마이크로 서비스에 통보해야합니다."라는 말을 읽을 수 있듯이 (다른 사람들과 조율하는 것에 대해) 알리고 자 할 때마다 다른 마이크로 서비스에 의존하지 않고 무엇을해야 할지를 알고 있다고 생각합니다. 그리고 그것이 사실이라면 SNS가 적합합니다.