-
API 서비스 개발 ( AWS API Gateway - Swagger 사용 경험담 )[ 개발 ]/[ AWS ] 2020. 11. 12. 14:54728x90
얼마전 프로젝트에서 API 서비스를 개발하개 되었다.
회사에서는 이미 AWS 를 도입하여 AWS에서 운영되고 있는 모든 내용에 대해서는 될 수 있으면 AWS 의 서비스를 이용하고 있다.
우리는 관련해서 다음과 같은 구조로 서비스를 설계 하였다.
Swagger : API Doc 정의
API Gateway : 외부에서 공개적으로 사용되는 모든 API 는 API Gateway 를 거쳐 진행하도록 설계를 진행한다.
개발방법은 다음과 같다 .1. Swagger 를 통하여 API를 정의한다.
* Swagger 에서는 json 또는 yaml 로 API 정의할 수 있으며 추후 정의된 내용을 API Gateway 바로 반영하여 동작시킨다.
2. 정의된 API를 API Gateway 에 integration 을 통하여 반영한고 Mockup 으로 동작하도록 한다.
외부의 협업이 필요한 부분에 대해서는 Mockup 을 바라보고 선 개발하도록 열어줄 수 있다.
Mockup 역시 Swagger 에서 사전에 정의할 수 있다.
3. 각각의 API 가 서버에서 개발될 때 마다 Mockup 에서 서버로 호출하도록 API Gateway 설정을 바꾸어 준다.
4. 개발이 모두 완료되면 AWS Gateway 의 Staging 을 이용하여 운영에도 반영하도록 한다.장점
가장 인상적이였던 부분은 2,3을 동시 진행가능하다는 점. 그리고 stagiing 을 잘 이용하면 효과적이고 안정적으로 개발을 할 수 있다는 점
단점
Swagger 에서 API Gateway 의 staging 설정을 할 때 프로토콜은 설정할 수 없어 개발과 운영을 http 혹은 https 로 통일해야 한다는 것
( 이부분을 늦게 알아서 ELB 설정 등으로 통일을 시켜야 했다. )
Swagger 가이드가 영문이고 CROS 를 AWS Gateway 에 반영하는 부분이 없어 API Gateway 에서 설정 후 역으로 Swagger Json으로 내려 받아 참고하며 수정했던 점.
여러모로 참신한 개발이였다.
다음 개발은 서버가 완전이 없느 서버리스로 도전해 보아야겠다.728x90'[ 개발 ] > [ AWS ]' 카테고리의 다른 글
API Gateway CORS 설정 후 iOS 12.x 이하, IE11 이하 에서 발생하는 오류 (0) 2020.11.20 Amazon Elastic Container Service(ECS) 자습서 따라하기(1) (0) 2020.11.13