2

我有一个使用Rack::FiberPoolEventMachine的 JRuby/Rails 应用程序。我有一些基于事件的动作控制器:

class TwitterController < ApllicationController
  def tweets
    fiber = Fiber.current
    tweets = nil 

    EventMachine.next_tick do  
      http = EM::HttpRequest.new("http://search.twitter.com/search?q=rails+3&format=json").get
      http.callback do
        tweets = JSON.parse(http.response)
        fiber.resume
      end

      http.errback do
        puts "request failed"
        fiber.resume
      end     
    end

    Fiber.yield

    render :json => tweets
  end
end

当我使用瘦服务器手动运行时,它工作正常:

rails s thin

但是当我部署到 Tomcat 时它不起作用。无论如何在Tomcat中使用EventMachine?

谢谢。

4

0 回答 0