2012-03-28 4 views
3

나는 Heroku에서 호스팅되는이 앱과이 앱을 사용하여 데이터베이스에 많은 양의 데이터 정보를 저장합니다 (약 70 초 소요).Heroku에서 HTTP 스트리밍 (많은 양의 데이터 업로드)

Heroku가 업로드가 진행 대신 H12 오류가 표시되는 동안 는 H12에 대한 시간 제한, 어떻게 내가 몇 가지 정보 메시지를 표시 할 수있는 오류 페이지를 표시 모든 요청 30 초 기간 이후?

나는 이것에 대한 몇 가지 예를 찾고 있었지만 나는별로 성공하지 못했다 ... 나는 방금 서버에서 제어 문자열을 보낼 때마다 (예 : 15 초) 이미 구체적인 예제를 찾지 못했습니다 ...

어떻게해야합니까?

감사합니다.

답변

0

모든 플랫폼에서 요청을 완료하기 위해 사용자가 70 초 동안 대기하는 것은 바람직하지 않습니다. Heroku는 30 초 제한 시간을 구현하여 최상의 방법을 적용합니다. 따라서 실제 질문은 응용 프로그램을보다 잘 설계하는 방법입니다. (지연 작업을 사용하는 기본적인 방법은 웹 요청이 백그라운드 작업을 예약하는 것입니다 https://devcenter.heroku.com/articles/queueing

, 큐 클래식, Resque 등 :

Heroku가 바로이 문제를 해결하기 위해 설계 배경 노동자를 구현하는 방법에 대한 기사를 가지고 ..) 즉시 진행 상황에 대한 표시로 사용자에게 응답합니다. 그런 다음 백그라운드 작업자를 실행하는 dyno가 db에 정보를 저장하는 무거운 작업을 수행합니다. 작업이 완료되면 웹 클라이언트에게 작업이 완료되었음을 알리는 db 또는 다른 저장 메커니즘에서 일부 플래그를 뒤집습니다.

백그라운드 작업자를 실행하려면 다른 dyno가 필요합니다. 당신이 그 비용을 피하기 위해 찾고 있다면 많은 성공을보고하는 Girl Friday을 들여다 볼 수 있습니다.

희망이 있습니다.

관련 문제