2013-08-07 5 views
2

죄송합니다, 영어, 난 초보자입니다.Redis 게시 레일에 4 중지 서버 스레드

레일 4 및 redis gem이있는 redis.publish 기능을 사용하여 SSE로 메시지를 푸시하려고합니다. 초기화에서

$redis = Redis.new(:host => '127.0.0.1', :port => 6379, :db => 1,:timeout => 0) 

-

나는 내 컨트롤러에

logger.info "test1" 
$redis.publish "user", "test" 
logger.info "test2" 

경우 $의 레디 스를이 블록을 가지고있다. 생산 인쇄

I, [2013-08-07T22:34:50.138232 #4679] INFO -- : test1 

그리고 아무것도에서

서버 콘솔. 다른 요청이 작동하지만이 스레드가 중지됩니다. 그런데

, 성공적으로 클라이언트에 표시 $redis.publish "user", "test" 완벽하게 실행 및 메시지 RAILS_ENV=production rails console에서이.

도와 주시겠습니까?

UPD : 루비 2.0 p247은 가입과 동시에 게시 할 수 초기화에 하나 개의 연결을 사용하지 마십시오,

답변

2

레디 스 3.0.4 4 레일. 게시 컨트롤러에, SSE 작가 1을 구독하고 모든 것이 정상적으로 작동을 위해

나는 2 개 연결, 1을 만들었습니다.