Resque vs Sidekiq? [닫은]


127

현재 Resque백그라운드 프로세스에 사용 하고 있지만 최근에 대해 많은 허프 버프를 들었습니다 sidekiq. 아무도 비교 / 차별화 할 수 있습니까?

특히 작업이 완료되었는지 프로그래밍 방식으로 모니터링하는 방법이 있는지 알고 싶습니다. sidekiq


71
이 질문이 "SO에 적합하지 않은"것으로 닫히지 않았 음을 알게되어 매우 기쁩니다.
Dogweather

51
좋은 질문을 모두 끝내고 사람들을 기쁘게 할 수 있습니까? 나는 그것이 매우 광범위하다는 것을 알고 있으며, 그것은 또한 매우 중요하고 흥미 롭습니다.
superluminary

19
언젠가 그들은 프로그래머들이 질문을 할 수있는 사이트를 발명 할 것이고, 그 사이트는 주관적인 응답을 허용 할 것입니다. 무시하거나 관련성에 따라 투표 할 수있는 질문.
baash05

4
@ baash05 그리고 Quora라고합니다!
nakhli

6
야후 답변 (Yahoo Answers)이라고하며 품질은 바닥을 통해 떨어질 것입니다.
21:40의

답변:


130

Resque :

장점 :

단점

  • 작업 자당 프로세스를 실행합니다 (더 많은 메모리 사용).
  • 작업을 재 시도하지 않습니다 (어쨌든 즉시 사용 가능).

사이드 키 :

찬성

  • 작업 자당 스레드를 실행합니다 (더 적은 메모리 사용).
  • 덜 포크 (더 빨리 작동);
  • 상자에서 더 많은 옵션.

단점

  • [거대한] 코드와의 스레드 안전을 필요로 하는 모든 종속성을 . 스레드로 안전하지 않은 코드를 실행하면 문제가 발생합니다.
  • 일부 루비에서 다른 루비에 대해 더 잘 작동합니다 (jruby가 권장되며 GVL (글로벌 VM 잠금)로 인해 MRI의 효율성이 저하됨).

19
"스레드 안전하지 않은 코드"를 실행 중인지 어떻게 알 수 있습니까?
Dogweather

4
예를 들어, 전역 변수에 상태를 저장하는 경우 문제가 발생합니다.) 보석 에 대해서는 wiki에 있습니다.
Sergio Tulentsev

25
@mrbrdo 더 이상 틀릴 수 없습니다. GVL은 루비 코드의 스레드 안전성과 관련이 없습니다. GVL은 루비 인터프리터 코드 (MRI C 코드)의 스레드 안전성에 관한 것입니다.
radarek

2
나는 Resque의 'pro'와 모순되어야합니다. README for Resque는 오늘 'MRI가 아닌 루비를 지원하고 싶지만 버그가있을 수 있습니다.'라고 말합니다. github.com/resque/resque/blob/master/README.md#requirements
JellicleCat

2
Rubyracer를 사용하여 작업 내에서 JavaScript를 실행할 계획이라면 특히 Sidekiq을 피할 것입니다. Sidekiq 자체의 결함은 아니지만 멀티 스레딩은 루비 레이서에 문제를 일으 킵니다. github.com/cowboyd/therubyracer/issues/206
Jeremy Burton

10

질문에서 :

특히 작업이 sidekiq에서 완료되었는지 여부를 프로그래밍 방식으로 모니터링하는 방법이 있는지 알고 싶습니다.

이에 대한 해결책은 다음과 같습니다.

  1. Sidekiq :: 상태 보석
  2. 배치 API (Sidekiq Pro)- 사용법
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.