Architect과정의 자격증은 associate, professional 두 가지가 있다. 아래 후기에서 처럼 asso는 150달러 pro는 300달러의 응시료가 있다. 그리고 합격 한다면 50% 할인 바우처 1개를 주는데 asso + pro = $150 + ( $300 / 2 ) = $300이고, pro = $300이다. 결과적으로 associate를 따고 pro를 따는 것과 바로 pro를 따는 것은 같은 가격이다. 어떤 path를 선택하던지 개인이 선택하면 될 것 같은데... 나는 시험공부는 길어지는 걸 싫어해서 단기간 집중하려고 한다. 지금까지 프로젝트를 하면서 사용했던 것들도 시험내용과 비교해보고 앞으로 진행할 프로젝트에도 도움이 될 것이라 기대된다.
micro service간의 통합을 위해 queue를 적극적으로 사용하려고 하면서 system 외부로 부터의 request는 어떻게 처리해야 할까 고민을 하게 되었다. 그리고 결국 AWS APIGateway를 사용하기로 결정이 났다. 사실 처음에는 system 외부 다른 서버들이 바로 SQS SDK를 사용하여 통신하면 될 것인데 SDK의 dependency도 제거 하자는 의견이었다. (개인적은 생각으로는 AWS SDK가 대다수의 많은 platform을 커버하고 있고 SQS 자체도 http를 지원하고 있기 때문에 API를 앞에 두는게 무슨 의미가 있나?라고 생각 했지만 REST로 구현 한다면 client들의 플랫폼별 구현은 통일 되는것은 분명해 보인다.)
일단 API server로는 AWS API gateway -> SQS -> service 이런 식으로 구성하였고 각 micro service들은 SQS를 통해 메세지를 받아 처리하는 식으로 추가될 것이다. 경우에 따라서는 SQS가 안 붙을 수 있겠지만 결국 API gateway를 통해서 외부 request를 처리하도록 하였다.
그림과 같이 마이크로 서비스 앞에 SQS를 적용하면서 API gateway와 연동 되어야 했는데 같은 AWS 서비스니까 클릭만으로 될꺼야...라고 넘겨짚은 것이 화근이었다. 분명 다음 그림 같이 API method에는 AWS service의 SQS를 고르는게 있어서 다 된 줄 알았다.
역시 AWS!! 라고 속으로 좋아하는 순간 test 결과는?
error message가 "access to the resource is denied."... Execution role을 다시 봤지만 문제 없었다... 뭐가 문제지???하며 보내는 쪽이 문제 없다면 받는쪽은? 하는 생각이 들었고 SQS의 spec을 뒤지기 시작함.