2015-01-10 3 views
4

HTTP 요청과 함께 큰 (JSON) 본문을 사용할 때 문제가 발생했습니다. 로컬에서 제대로 작동했지만 Google Cloud Compute 인스턴스에 서버 애플리케이션을 배포했을 때 요청이 완전히 수신되지 않았습니다. 그들은 약 82 kBs로 절단되었습니다. 나는 중간에 HTTP로드 밸런서를 사용하지 않고 인스턴스에 직접 연결할 때 모든 것이 잘 작동한다는 것을 알아 차렸다. 또한 포트 80을 사용하도록 구성된 Network Load Balancer를 사용해 보았습니다. 그래서 문제는 HTTP로드 밸런서가 원인 인 것 같습니다.HTTP로드 밸런서가 대형 요청 본문 일부를 잘라냅니다.

누구든지 해결책을 찾았습니까? 내 요구 사항에 더 잘 부합하기 때문에 HTTP로드 밸런서를 사용하고 싶습니다. 예를 들어 인스턴스 그룹을 백엔드 대상으로 추가 할 수 있습니다. 네트워크 LB에서는 각 인스턴스를 별도로 지정해야합니다.

+1

[관리 인스턴스 그룹] (https://cloud.google.com/sdk/gcloud/reference/preview/managed-instance-groups/create)을 사용하여 네트워크 LB에서 인스턴스 그룹을 사용할 수도 있습니다. 네트워크 LB 사용을 피하는 다른 요구 사항이 있습니까? –

+0

Network LB를 관리 대상 인스턴스 그룹과 함께 사용하게되었는데 그 솔루션이 나에게 잘 맞습니다. –

+0

난 그냥 입력을 echos CGI 스크립트를 만들어 51MB의 무작위 데이터로 이것을 테스트했습니다. 나는 항상 게시 된 데이터로 돌아가는 것을 발견했다. 사용한 웹 서버 및 응용 프로그램 프레임 워크를 공유 할 수 있습니까? – David

답변

1

GCE HTTP로드 밸런서 doesn't support HTTP 100 Continue requests이 멀티 파트 POST 요청에 영향을 미칠 수 있다는 점에서 문제가 발생할 수 있습니다. 이 솔루션은 멀티 파트를 사용하지 않거나 GCE 네트워크로드 밸런싱 (필요에 따라 제공 될 수도 제공하지 않을 수도 있음)을 사용합니다.