2011-11-08 2 views
2

비동기를 의미하는 응답을 기다리지 않는 레일에서 게시물 요청을 수행하는 방법이 있는지 궁금합니다.레일 비동기 POST 요청

컨트롤러에서 이러한 호출을 수행하려고합니다. 가능한가?

감사합니다.

답변

2

레일에서 일반적으로 수행하는 방법은 리큐 또는 딜레이 조브와 같은 백그라운드 작업자를 사용하여 무거운 작업을 수행하는 것입니다. 엔드 포인트에 게시하고 해당 게시물의 결과로 장기 실행 작업을 큐에 대기시킵니다. 요청이 빨리 끝나면 백그라운드 작업자가 느리고 무거운 작업을 비동기 적으로 수행합니다.

레일스는 일반적으로 EventMachine 또는 Node.js와 같은 비동기 작업용으로 설계되지 않았습니다. 그런 종류의 행동을 취할 수있는 옵션이 있지만 매개 변수를 설정하는 것만 큼 쉽지는 않습니다. 당신이 완료 핸들러에 Typhoeus하고 사용할 수

0

request = Typhoeus::Request.new("http://localhost:3000/posts/1.json") 
request.on_complete do |response| 
    # your stuff 
end