내가 Ubuntu14.04, 레일 (5)을, RabbitMQ (서버 3.6.5)를 사용하여 읽기, 버니 2.5.1RabbitMQ 시간 초과 : 오류 : IO 제한 시간 7 바이트
나는 servise에 토끼를 구현하고 테스트하는 시도 그것. 그것이 잘 작동
큐 등을 만드는Mq::RabbitService
서비스 버니, 연결을 초기화 포함
def rabbit_test
s_time = Time.current
10_000.times do |n|
Mq::RabbitService.new('test_queue').publish(n.to_s)
end
p "###############################"
p "RabbirMQ Diff: #{Time.current - s_time}"
p "###############################"
end
이
그것이 내가
Mq::RabbitService.new('test_queue').subscribe
를 실행하는 다른 터미널 시작을 위해 :
나는 다음 루비 스크립트를 작성 , 그러나 나는 단지 827 메시지만을 밀어 넣을 수있다. (왜 정확히 837인지는 모르지만, 항상 같은 숫자이다.)
[8] pry(main)> rabbit_test
E, [2016-08-19T15:17:02.445820 #6409] ERROR -- #<Bunny::Session:0x6fb39858 [email protected]:5672, vhost=/, addresses=[192.168.1.67:5672]>: Got an exception when receiving data: IO timeout when reading 7 bytes (Timeout::Error)
Timeout::Error: IO timeout when reading 7 bytes
from /home/oleg/.rvm/gems/ruby-2.3.1/gems/bunny-2.5.1/lib/bunny/cruby/socket.rb:52:in `rescue in read_fully'
는 또한 나는 시도했다 : 내 게시자 인상 오류 그 후
관리자 권한으로 새 사용자를 추가 동일한 결과 (192.168.0.11
같은) IP를 대신 localhost
주소를 추가했습니다.
이
편집
나는 Mq::RabbitService gist하지만
이 가 가 가이 작동하지 않는
def rabbit_test
s_time = Time.current
1_000.times do |n|
connection = Bunny.new(host: '192.168.1.67', port: 5672, user: 'oleg', password: '111111').start
channel = connection.create_channel
channel.queue('queue_name', auto_delete: true)
exchange = channel.default_exchange
exchange.publish(n.to_s, routing_key: 'queue_name')
channel.close
end
p "###############################"
p "RabbirMQ Diff: #{Time.current - s_time}"
p "###############################"
end
RabbitMQ 연결에 대한 내 서비스를 사용하여 너무
어쩌면 누군가가 내가 잘못 뭘 알아?
감사합니다.
'Mq :: RabbitService'를 직접 만드셨습니까? 아니면 보석입니까? 수업이 자신의 수업 인 경우이 수업에 대한 요점을 연결해주십시오. – slowjack2k
EDITED 표시 후 질문에서 확인할 수 있습니다 –
루프 밖에서 연결을 이동할 수 있습니까? 문제와 관련이 있는지 확실하지 않지만 매번 새로운 연결을 만드는 이유는 무엇입니까? – theMayer