내가 지금 내 백엔드 스트레스 테스트이고 내가 스레드가 람다 제한하고 다음과 같은 오류가 공격 시간의 짧은 기간에 많은 호출 할 때 보인다내 람다 함수 호출을 대기열에 넣기위한 AWS의 SNS, SQS 또는 Kinesis를 결정하는 방법은 무엇입니까?
이"errorMessage":"unable to create new native thread","errorType":"java.lang.OutOfMemoryError
현재 내 아키텍처입니다 같은 :
(API 게이트웨이) -> (람다) -> (DynamoDB의)
내가 위의 문제를 방지하는 가장 좋은 방법 큐잉을 구현하는 것입니다 그림. 나는 SNS, SQS, Kinesis를 통해 다양한 방법으로이 작업을 수행 할 수 있다고 온라인에서 읽었습니다. 다음 중 어느 것입니까?가) 가장 적은 통합이 필요한 현재 아키텍처에 가장 잘 어울리는가요?
B) 내 스레드 문제를 해결할 수 있습니까?
C) 이유가 무엇입니까?
감사합니다.
람다 (Lambda) 기능에서 얼마나 많은 메모리를 구성 했습니까? 최대 1536MB로 실행하고 있습니까? JMV에 새 스레드를 만들 수있는 충분한 여유 메모리가 없습니다. – hellomichibye
나는이 문제가 처음에 512mb에서 1024mb로 내 메모리 제한을 깨뜨렸다고 생각했고 그것은 한 가지를 바꾸는 것처럼 보이지 않았다. 생각? @hellomichibye –
내가 [이미 언급 한] (http://stackoverflow.com/q/39500938/1695906) 가능성있는 설명과 반응이 없어 -이 컨테이너는 재사용되고 있으므로 제대로 물건을 청소하지 마십시오. 이것은 단시간에 여러 번 호출 할 때만 문제가 발생하는 이유에 대한 논리적 인 설명입니다. –