1

사용자는 다양한 장치에 의해 소비되도록 비디오를 amazon s3으로 업로드 할 수있는 react-native 코드를 작성해야합니다. 업로드가 발생한 후 처리합니다.람다 소비를위한 s3 이벤트 알림에 추가 값 전달

1) 나는 ffmpeg와 함께 Lambda를 사용하여 업로드가 발생한 직후에 트랜스 코딩을 처리 할 수 ​​있습니다. 여기에 비디오를 트랜스 코딩하는 데 필요한 시간과 소요될 경우 가격에 미치는 영향이 두려울 것입니다. 상당한 시간).

2) 생성 된 이벤트가 발생한 후 s3 메시지를 나머지 API에 전달할 수 있으며 나머지 API는 ffmpeg를 사용하여 트랜스 코딩을 수행하는 작업자가 처리 할 rabbitmq 메시지를 생성합니다.

옵션 1)은 완료 시간의 관점에서 볼 때 바람직한 옵션 인 것으로 보입니다. 1) 비디오 트랜스 코딩이 옵션 2와 반대되는 시간이 얼마나 걸리는지 고려하여 어떻게해야합니까?

또한 람다 또는 sns 메시징에 추가 매개 변수를 전달하는 방법이 필요합니다. 이러한 매개 변수를 사용하면 비디오를 자신의 계정에 업로드 한 사용자를 어떻게 든 연결할 수 있습니다. 업로드가 완료되면 s3에 추가 텍스트 기반 값을 전달하여 업로드가 완료되면 나머지 레이어를 사용하여 s3에 직접 업로드 할 것을주의해야합니다 (이 답변은 여기에 있습니다 : http://docs.aws.amazon.com/AmazonS3/latest/API/RESTObjectPUT.html#RESTObjectPUT-responses-examples) ?

답변

0

AWS provides a video transcoding service 정확하게이 유형의 것입니다. 어떤 이유로 든 그렇게하고 싶지 않다면 5 분 안에 AWS Lambda에서 트랜스 코딩 작업을 완료 할 수 있어야합니다. RabbitMQ와 작업자를 사용하는 두 번째 옵션의 출처가 확실하지 않습니다. SQS 대신 RabbitMQ를 사용해야하는 이유는 무엇입니까? 근로자가 람다 (Lambda) 기능 대신에 EC2 서버에서 프로세스가 될 것인가?

다른 질문에 대해서는 해당 추가 매개 변수를 S3 개체의 메타 데이터 필드로 전달해야합니다. 연결된 문서에서 x-amz-meta-의 작동 방식을 확인하십시오. 그런 다음 나중에 S3에서 개체를 검색하여 코드 변환하면 메타 데이터 필드를 동시에 검색 할 수 있습니다.

+0

트랜스 코딩 서비스를 사용하여 요금이 합산됩니다. AWS 환경에서 강의를 배웠습니다. 5 분 안에? 5 분 동안 비용이 어떻게됩니까? – user1790300

+0

단일 AWS 람다 호출을 5 분 이상 실행할 수 없습니다. 그래서 내가 그렇게 말한거야. 하나의 트랜스 코딩 작업이 5 분 이상 걸리는 경우,이를 다중 람다 호출로 분할하는 방법을 알아야하거나 람다를 사용할 수 없습니다. –