2017-02-26 2 views
16

AWS API 게이트웨이 (더 구체적으로, Serverless 프레임 워크 사용)에서 프록시 기능을 사용하거나 사용하지 않고 람다 통합을 사용하는 경우의 장단점은 무엇이라고 생각합니까?람다 통합 대 람다 프록시 : 찬반론과 단점

람다 통합 프록시

  • 프로와 : : 여기가 생각하는 지금에 무엇 하나는 신속하게 필요한 모든 구성 세부 사항에 대한 걱정 (제네릭과 같은 몇 바퀴를 개혁하지 않고 프로토 타입 및 코드 수 템플릿 매핑 등).
  • Pro : 요청의 본문, 헤더, 매개 변수를 읽는 일반적인 방법이 있지만 동시에 모든 상태 코드와 사용자 지정 헤더를 반환하는 것은 매우 쉽습니다.
  • : 모든 것이 코드로 수행되므로 자동 생성 문서가 조금 더 어렵습니다. 종속성 (헤더, 모델, 반환 된 상태 코드)은 코드에서 "숨김"됩니다.

람다 통합 콘

  • 프록시없는 : 그것을 설정하는 작업 많은 이상을 포함,이 구성은 다른 자원에서 중복 될 수 있습니다.
  • Pro : 람다가 수신하고 반환하는 것, 그리고 다른 HTTP 상태 코드, 헤더 및 페이로드로 매핑되는 방식을 분리 할 수 ​​있습니다.
  • pro : 반환하는 항목과 헤더 및 페이로드 측면에서 필요한 항목을 사전에 지정하기 때문에 매우 유용합니다.
  • Pro : 모든 것을 설정할 때 힘든 일은 모든 것을 Swagger로 내보낼 수 있기 때문에 장기적으로 유용하기 때문에 다른 사용자가이를 사용하여 다른 SDK를 생성 할 수 있습니다.

귀하의 의견은 무엇입니까? 일반적으로 람다 프록시 또는 일반 람다 통합을 사용합니까? 당신은 무엇을 선호합니까? 왜 그럴까요?

편집은 : 지금까지, 나는 때문에 언급 한 이유 (디커플링 및 등 - 선행 종속 -headers, 상태 코드를 명시)에 항상 프록시 기능을 사용하지 않도록 선택하는 경향이 있어요.

+3

나는 당신의 장단점에 동의하지 않으며,이 질문은 매우 흥미 롭다. 나는 다른 사람들이 생각하는 것을보고 싶다. 그러나 의견에 기반한 질문은 stackoverflow가 무엇을위한 것인지를보고 싶다. –

답변

2

프록시가 없습니다.

저는 프로덕션 환경에서 몇 가지 SLS 배포가 있습니다. 일부는 내부 도구로 수익을 창출합니다. 프록시를 독점적으로 사용하지 않습니다. 내 응용 프로그램에 대한 AWS의 구조에 의존하고 싶지 않아서 친구가되는 것을 멈 추면 너무 많은 고통없이 마이그레이션 할 수 있습니다.

프록시의 찬성에 관해서는 나는 당신을 프로와 같은 사기꾼으로 여긴다. 나는 "빨리 움직여 라."전에 모든 것을 보았습니다. 그렇습니다. 우리는 민첩하고 신속하게 움직일 수 있어야합니다. 그러나 사고 할 필요는 없습니다. 저는 엔지니어들과 함께이 모든 것을 얻었습니다. 문서 작성/디자인에 관한 한 가지 부족한 점은 "계획을 세우는 것만으로도 코드가 가능합니다"라고 말하는 것입니다. 얼마나 빨리 시장에 내놓더라도, 당신이 어떻게 구석을 잡을 지.프록시 (프로젝트 구조에 대한 초기 계획 및 일부 훌륭한 DDD 생각)를 사용하면 AWS에서 마이그레이션하는 것이 매우 간단하여 전 세계가 불타 버릴 수 있습니다.

AWS와 관련된 새로운 기능을 빠르게 익히는 것은 매우 어렵습니다. 일단 당신이 그것을 알게되면 그 그레이비 모든 개발자지만 devs, 인프라 엔지니어 (둘 다 누가 놀랍게도 희귀합니다 우리). 추상화는 사람들이 토끼 뼈 아래로 그들의 어려운 여행을 시작할 때 생산성을 유지하도록 도와줍니다. 이드는 20 분마다 CFN에 대해 저를 괴롭히는 것보다 내 코더 코드를 사용합니다.