0

次の EventMachine ベースの Ruby クライアントがありますが、サーバーに接続しても何も出力されません。

EventMachine.run do
  conn = EventMachine::HttpRequest.new('http://localhost:10000')
  http = conn.get

  http.stream do |data|
    puts data  # THIS SHOULD BE OUTPUTTING SOMETHING
  end

  trap("INT")  { puts 'INT'; http.close; EventMachine.stop }
  trap("TERM") { puts 'TERM'; http.close; EventMachine.stop }
end

そしてサービス:

module Simulation
  class QuoteService < EM::Connection
    def post_init
      puts "CONNECTION ESTABLISHED"  # THIS DOES OUTPUT

      EventMachine.add_periodic_timer(1) do
        puts "test data"  # THIS DOES OUTPUT
        send_data("test data")
      end
    end
  end
end

EventMachine.run do
  Signal.trap("INT")  { EventMachine.stop }
  Signal.trap("TERM") { EventMachine.stop }

  EventMachine.start_server('0.0.0.0', 10000, Simulation::QuoteService)
end

サービスに何か問題があると思います。クライアントが何も出力しない理由はありますか?

4

1 に答える 1