<ph type="x-smartling-placeholder"></ph>
현재 Apigee Edge 문서를 보고 있습니다.
Apigee X 문서. 정보
한 프록시가 다른 프록시의 대상 엔드포인트임을 지정하여 프록시 체인에서 두 프록시를 효과적으로 연결할 수 있습니다. 이러한 방식으로 프록시를 연결하면 네트워크 홉을 피하고 전반적인 성능을 개선할 수 있습니다.
프록시 연결을 사용하여 하나의 프록시가 다른 프록시의 로컬 대상 엔드포인트임을 지정합니다.
두 번째 프록시를 호출하기 위해 HTTPTargetConnection
요소를 사용하는 대신 LocalTargetConnection
요소를 사용합니다.
<LocalTargetConnection> <APIProxy>myproxy2</APIProxy> <ProxyEndpoint>default</ProxyEndpoint> </LocalTargetConnection>
다른 프록시가 사용하게 될 일부 개별 하위 수준 기능을 제공하는 프록시가 있는 경우 프록시 연결이 유용할 수 있습니다. 예를 들어 백엔드 데이터 저장소와 함께 생성/읽기/업데이트/삭제 작업을 노출하는 프록시는 클라이언트에 데이터를 노출하는 다른 여러 프록시의 대상 프록시가 될 수 있습니다.
동영상: API 프록시 연결에 대해 자세히 알아보려면 짧은 동영상을 확인하세요.
프록시 연결 작동 방식
프록시 연결은 한 프록시를 다른 프록시에서 호출할 때 로컬 연결을 사용하여 네트워크 오버헤드를 최소화합니다. 이 로컬 연결은 부하 분산기, 라우터, 메시지 프로세서와 같은 네트워크 기능을 우회하므로 더 효율적입니다.
다음은 HTTPTargetConnection
를 사용하여 프록시를 연결하는 경우의 차이점을 보여줍니다.
및 LocalTargetConnection
(프록시 체이닝):
한 프록시가 다른 프록시의 로컬 대상 엔드포인트임을 지정하여 프록시에 연결합니다. 다음과 같은 작업을 할 수 있습니다. 두 가지 방법으로 프록시 간에 로컬 연결을 생성합니다.
- 대상 프록시의 이름과
ProxyEndpoint
이름을 지정합니다. - 대상 프록시 엔드포인트의 경로 지정
아래 설명된 대로 LocalTargetConnection
요소를 사용하여 TargetEndpoint
구성 내에서 대상 프록시를 연결합니다.
프록시 이름으로 프록시 연결
이름으로 대상 프록시를 지정할 수 있습니다. 이 방법은 처음부터 연결을 만들고 프록시를 같이 개발하는 경우에 가장 유용합니다. 이름을 모르거나 이름이 변경될 수 있는 경우 아래에 설명된 대로 대상 프록시의 엔드포인트 경로와 연결하는 것이 좋습니다.
이름으로 대상 프록시에 연결할 때 프록시 이름과 해당 ProxyEndpoint
의 이름을 지정합니다.
다음 예시에서는 data-manager
라는 대상 프록시와 data-manager
에서 노출하는 ProxyEndpoint
이름을 지정합니다. 자세한 내용은 API 프록시 구성 참조를 확인하세요.
<TargetEndpoint name="datamanager"> <PreFlow name="PreFlow"> <!-- PreFlow policies --> </PreFlow> <PostFlow name="PostFlow"> <!-- PostFlow policies --> </PostFlow> <LocalTargetConnection> <APIProxy>data-manager</APIProxy> <ProxyEndpoint>default</ProxyEndpoint> </LocalTargetConnection> </TargetEndpoint>
경로로 프록시 연결
엔드포인트 경로를 사용하여 대상 프록시를 지정할 수 있습니다. 프록시 이름을 모르거나 이름이 변경될 수 있는 경우 이렇게 하는 것이 좋습니다.
프록시가 대상 프록시의 소비자인 경우(예: 경로가 가장 신뢰할 수 있는 연결 방법일 수 있습니다. 예를 들어 연결 중인 프록시를 다른 팀에서 개발하고 유지 관리하는 경우 신뢰할 수 있는 엔드포인트 경로를 사용하여 연결할 수 있습니다.
다음 예시에서는 /v1/streetcarts/foodcarts/data-manager
에서 대상 프록시를 지정합니다. 여기서 호스트는 현재 프록시와 동일하다고 가정합니다. 관련 정보는 API 프록시 구성 참조를 확인하세요.
<TargetEndpoint name="datamanager"> <PreFlow name="PreFlow"> <!-- PreFlow policies --> </PreFlow> <PostFlow name="PostFlow"> <!-- PostFlow policies --> </PostFlow> <LocalTargetConnection> <Path>/v1/streetcarts/foodcarts/data-manager</Path> </LocalTargetConnection> </TargetEndpoint>
관리와 프록시 연결 Console
Edge 관리 콘솔을 사용하여 프록시 연결을 생성할 수 있습니다.
- 대상 프록시를 사용할 프록시를 엽니다.
- 탐색기에서 대상 엔드포인트 옆에 있는 더하기 기호를 클릭합니다.
- 새 대상 엔드포인트 대화상자에 대상 엔드포인트의 이름을 입력합니다.
- 대상 엔드포인트 이름 상자 아래에서 다음 중 하나를 선택합니다.
-
프록시 연결: 조직 및 환경에 이미 있는 프록시 목록에서 선택합니다.
- 프록시 이름 드롭다운에서 대상 프록시를 선택합니다.
- 프록시 엔드포인트 상자에서 연결할 대상 프록시 엔드포인트 경로를 입력합니다.
- 경로 연결: 대상 프록시 기본 경로(예:
/mypath/myproxy/myendpoint
)를 입력합니다.
-
프록시 연결: 조직 및 환경에 이미 있는 프록시 목록에서 선택합니다.
- 추가를 클릭합니다.
연결된 프록시, API 제품, 보안
프록시 연결은 두 프록시가 동일한 API 제품에 있는 경우에 가장 적합합니다. 기본적으로 클라이언트는 두 프록시 모두 사용할 수 있습니다. 현재 Apigee는 클라이언트가 액세스할 수 없는 별도 API 제품의 두 번째 프록시를 번들로 묶는 것을 지원하지 않습니다.
다이렉트 고객 요청에 대비해 두 번째 프록시를 보호해야 하는 경우, 두 번째 프록시가 클라이언트의 IP 주소를 검사하도록 로직을 추가하는 것이 좋습니다. 프록시 연결을 통해 이루어지는 호출의 경우 IP 주소가 로컬로 수행됩니다. 계속 진행하기 전에 코드로 로컬 여부를 검증할 수 있습니다. 이 작업을 수행하는 한 가지 방법은 액세스 제어 정책을 참조하세요.