0

Google 클라우드 저장소에 여러 청크로 파일을 업로드하는 자바 스크립트 코드를 구현했습니다. 1. 사용자가 자바 스크립트 클라이언트 웹 응용 프로그램 {요청이 아시아 지역에서이다} NODEJS {구현 우리의 응용 프로그램 서버에 2. 자바 스크립트 클라이언트 응용 프로그램 요청을 사용하여 업로드 할 파일을 선택 : 아래Google 저장 용량에 파일 업로드 속도를 향상시키는 방법은 무엇인가요?

내가 업로드 파일을 실행 흐름이다 google cloud의 컴퓨팅 엔진에 호스팅 됨 - 미국 지역} 파일 업로드 허용 {승인} 2. Nodejs 앱 서버가 클라이언트 응용 프로그램에 서명 코드를 반환합니다. 3. 클라이언트 응용 프로그램이 서명 된 URL을 사용하여 여러 청크로 Google 저장 용량에 파일 업로드를 시작합니다. 4. 업로드시 성공적인 클라이언트가 앱 서버에보고합니다.

파일을 여러 청크로 업로드 할 수 있습니다 (bu). t 내가 클라우드에서 nodejs 앱 서버를 호스팅하는 경우 업로드 속도가 2-3 배 느리다는 사실을 확인했습니다. 클라이언트 요청이 실행되는 곳과 동일한 컴퓨터에서 호스팅하는 대신 미국 지역으로

해결 방법이 있으면 알려주십시오. 업로드 성능을 향상시키는 방법.

google cloud signed-url documentation에 언급 된 몇 가지 해결 방법은 :.

재개 업로드가에서 시작 지역에 고정되어 예를 들어, 당신은 미국에 재개 업로드 URL을 만드는 경우와 클라이언트 에게주고 아시아에서는 여전히 업로드가 미국을 통과합니다. 재개 가능한 업로드가 시작되지 않은 지역에서 업로드를 수행하면 업로드 속도가 느려질 수 있습니다. 이 문제를 방지하려면 초기 POST 요청을 구성하고 서버에서 으로 서명 한 다음 클라이언트에 서명 된 URL을 제공하십시오 ( ). 해당 위치에서 업로드가 시작되도록합니다. 일단 시작되면 클라이언트는 결과 세션 URI를 사용하여 서명 할 필요가없는 PUT 요청을 정상적으로 만들 수 있습니다.

그러나 참조

:

  1. I가 어떤 코드 샘플 발견을 couldnt : 클라이언트가 서버에서 서명 URL을 수신하면 초기 JSON API 호출을 구축 할 수있는 방법을 ??
  2. 첫 번째 호출에서 예상되는 응답은 무엇입니까? 어떻게 추출 할 것인가? 세션 URI
  3. 더 많은 청크를 업로드하기 위해 세션 URI를 사용하는 방법은 무엇입니까?

답변

1

두 개의 개별 GCS 기능을 혼동시킬 수 있습니다. GCS는 재개 가능한 업로드가 몇 가지 방법으로 자격 증명없이 제 3 자에게 승인되도록합니다.

먼저 서명 된 URL이 선호됩니다. 귀하는 서명 된 URL을 클라이언트로 전송하여 해당 클라이언트가 재개 가능한 업로드를 시작할 수있게합니다.

위에서 언급 한 지역 고정으로 인해 덜 선호되는 서버는 재개 가능한 업로드 자체를 시작한 다음 업로드 ID를 클라이언트에 전달하는 것입니다.

첫 번째 것을 원하지만 두 번째를 사용하는 것처럼 들립니다.서명 URL을 사용

은 JSON의 API와 비슷한 방식으로 재개 업로드를 처리하는 XML의 API의 제조를 사용해야합니다 https://cloud.google.com/storage/docs/xml-api/resumable-upload

당신은 업로드를 만드는 데 그 첫 번째 POST 호출에 서명하고 전달하려는 것 그 URL은 사용자가 직접 호출 할 수 있습니다.