2012-12-25 2 views
1

30 초 이상 필요한 Google appengine에서 구문 분석 및 다운로드 Excel 파일을 업로드하려면 어떻게해야합니까? 나는 자바 포이 (poi)와 백엔드 태스크를 사용하지만 백엔드가 작업을 수행하자마자 클라이언트에게 알릴 수 없다. 내가 백엔드 작업에서 만든 엑셀을 다운로드 할 수 없습니다 ... 어떤 제안을 많이 주시면 감사하겠습니다.Appengine, 파일 및 30 초 요청 제한

답변

3

여기서 가장 좋은 방법은 HTTP와 웹 서비스 아키텍처를 다투는 것이 아니라이를 사용하는 것입니다.

작업 ID의 개념을 소개합니다. 클라이언트가 파일을 업로드하면 즉시 해당 작업을 나타내는 토큰을 리턴하십시오. 추가 크레딧에는 예상 작업 시간이 포함됩니다. 초보자는 2 분을 말한다.

그러면 클라이언트는 토큰을 사용하여 해당 작업 ID의 상태를 서버에 쿼리합니다. 서버는 응답을 반환하거나 업데이트 된 ETA가있는 토큰을 반환합니다.

처음에는 클라이언트에게 2 분 (또는 작업 부하에 가장 적합한 상수)을 다시 확인하도록 지시 할 수 있습니다. 서버 처리가 더욱 스마트 해짐에 따라 더 정확한 견적을 제공하고 클라이언트의 대기 시간을 줄일 수 있습니다.

+0

Google 드라이브 SDK를 사용하면 30 초의 할당량을 무시할 수 있습니까? –

+0

@EfstathiosKalyvas : 아니요. 마감은 HTTP 요청에서 처리 (POST 본문을 읽거나 다른 곳에서 데이터를 가져 오는 중)와 관계없이 수행됩니다. 내 첫 문장보기 : "우회"하지 마라. 마감 기한은 훨씬 더 나은 디자인을 장려하며 구현하기가 그리 어렵지 않다는 것을 알게 될 것입니다. – ckhan

+0

사용자가 응답없이 응답하지 않는 것은 응용 프로그램을 설계하는 좋은 방법이 아닙니다. 그들은 추락하고 새로 고침 등등 일 수 있습니다. 승리에 대한 즉각적인 피드백. –