2012-05-10 3 views
1

send_email_to_all이라는 메소드가 있습니다. 사용자가 "이메일 보내기"버튼을 누르면, 위의 함수는 100 명에게 이메일을 보냅니다. 그러나 위의 send_email_to_all 메소드를 실행하는 데는 많은 시간이 필요합니다. 그러나 사용자가 실행하는 동안이 방법을 중지하려면 상단의 모든 웹 브라우저에서 제공되는 중지 버튼을 누릅니다. 이제 문제는 사용자가 중지를 눌러도 WEBrick이 함수 실행을 중단하지 않는다는 것입니다. 솔루션이란 무엇입니까?레일즈 실행 기능이 중지됩니다.

답변

1

정말 하나의 웹 요청을 통해 많은 이메일을 처리하지 않아야합니다. 전송을 관리하기 위해 일종의 백그라운드 프로세스를 제공해야합니다.

Railscasts.com은 여러 가지 유명한 배경 작업자를 다루며 예제는 일반적으로 전자 메일 배달을 처리하는 방법을 보여줍니다.

+0

이메일을 보내는 예를 들었습니다. 가끔씩 실행되는 다른 함수가있을 수 있습니다. 그리고 사용자가 요청을 중지하면 실행하는 동안 서버에서 해당 메소드를 중지해야합니다. –

관련 문제