Rq: λ”°λœ»ν•˜κ²Œν•˜μ§€ μ•Šκ³  μž‘μ—…μžλ₯Ό μ’…λ£Œ ν•  수 μžˆμŠ΅λ‹ˆκΉŒ?

에 λ§Œλ“  2013λ…„ 08μ›” 08일  Β·  8μ½”λ©˜νŠΈ  Β·  좜처: rq/rq

λ‚΄ rq μž‘μ—…μžλ₯Ό κ΄€λ¦¬ν•˜κΈ° μœ„ν•΄ κ°λ…μžλ₯Ό μ‚¬μš©ν•©λ‹ˆλ‹€.
λ‚΄ κ°λ…μž confλŠ” λ‹€μŒκ³Ό κ°™μŠ΅λ‹ˆλ‹€.

[program:rq-upload]
command=rqworker -H 10.182.63.61 -P /data/CDN_DATA_ANA/log/letvlog --name=10.180.153.80_re_upload_%(process_num)s log_upload_10.180.153.80
directory=/data/CDN_DATA_ANA/log/log
stopsignal=TERM
autorestart=true
autostart = true
startsecs = 5
process_name = rq_upload%(process_num)s
numprocs=2
user = root
redirect_stderr = true
stdout_logfile = /logs/rq-upload.log

ν•˜μ§€λ§Œ λ‹€μ‹œ μ‹œμž‘ν•  λ•Œ supervisorctl -c /etc/supervisord.conf update re-upload:*
항상 μž‘μ—…μž 이름이 μ‚¬μš©ν•œ 것을 μ•Œλ €μ€λ‹ˆλ‹€.

κ°€μž₯ μœ μš©ν•œ λŒ“κΈ€

λ‚΄κ°€ 쀑지 ν•  λ•Œ λ‚˜λŠ” 같은 λ¬Έμ œκ°€ rqworker ν•¨μœΌλ‘œμ¨ κ³ μ • ν‘œμ‹œκΈ°-μž‘μ„± μ‹€ν–‰ λͺ…λ Ήμ—μ„œ Ctrl+c λ‹€μ‹œ μ‹œμž‘ν•˜κ³  μ‹Άμ–΄.

worker_1  |   File "/usr/local/lib/python2.7/dist-packages/click/core.py", line 889, in invoke
worker_1  |     return ctx.invoke(self.callback, **ctx.params)
worker_1  |   File "/usr/local/lib/python2.7/dist-packages/click/core.py", line 534, in invoke
worker_1  |     return callback(*args, **kwargs)
worker_1  |   File "/usr/local/lib/python2.7/dist-packages/rq/cli/cli.py", line 206, in worker
worker_1  |     w.work(burst=burst)
worker_1  |   File "/usr/local/lib/python2.7/dist-packages/rq/worker.py", line 431, in work
worker_1  |     self.register_birth()
worker_1  |   File "/usr/local/lib/python2.7/dist-packages/rq/worker.py", line 251, in register_birth
worker_1  |     raise ValueError(msg.format(self.name))
worker_1  | ValueError: There exists an active worker named u'5d36705967ac.22' already

λͺ¨λ“  8 λŒ“κΈ€

Traceback (most recent call last):
  File "/usr/bin/rqworker", line 9, in <module>
    load_entry_point('rq==0.3.8', 'console_scripts', 'rqworker')()
  File "/usr/lib/python2.6/site-packages/rq/scripts/rqworker.py", line 84, in main
    w.work(burst=args.burst)
  File "/usr/lib/python2.6/site-packages/rq/worker.py", line 294, in work
    self.register_birth()
  File "/usr/lib/python2.6/site-packages/rq/worker.py", line 197, in register_birth
    'already.' % (self.name,))
ValueError: There exists an active worker named '10.181.153.149_rq_13' already.

λ‚˜λŠ” 였래된 문제λ₯Ό λ‹«μŠ΅λ‹ˆλ‹€. 이 λ¬Έμ œκ°€ μ—¬μ „νžˆ 적용되고 제 μ£Όμ˜κ°€ ν•„μš”ν•œ 경우 λ‹€μ‹œ μ—΄κ±°λ‚˜ μƒˆ 문제λ₯Ό μ œμΆœν•΄ μ£Όμ‹œκΈ° λ°”λžλ‹ˆλ‹€. 감사 ν•΄μš”.

λ‚΄κ°€ 쀑지 ν•  λ•Œ λ‚˜λŠ” 같은 λ¬Έμ œκ°€ rqworker ν•¨μœΌλ‘œμ¨ κ³ μ • ν‘œμ‹œκΈ°-μž‘μ„± μ‹€ν–‰ λͺ…λ Ήμ—μ„œ Ctrl+c λ‹€μ‹œ μ‹œμž‘ν•˜κ³  μ‹Άμ–΄.

worker_1  |   File "/usr/local/lib/python2.7/dist-packages/click/core.py", line 889, in invoke
worker_1  |     return ctx.invoke(self.callback, **ctx.params)
worker_1  |   File "/usr/local/lib/python2.7/dist-packages/click/core.py", line 534, in invoke
worker_1  |     return callback(*args, **kwargs)
worker_1  |   File "/usr/local/lib/python2.7/dist-packages/rq/cli/cli.py", line 206, in worker
worker_1  |     w.work(burst=burst)
worker_1  |   File "/usr/local/lib/python2.7/dist-packages/rq/worker.py", line 431, in work
worker_1  |     self.register_birth()
worker_1  |   File "/usr/local/lib/python2.7/dist-packages/rq/worker.py", line 251, in register_birth
worker_1  |     raise ValueError(msg.format(self.name))
worker_1  | ValueError: There exists an active worker named u'5d36705967ac.22' already

같은 λ¬Έμ œκ°€ μžˆμŠ΅λ‹ˆλ‹€.

μ—¬κΈ°μ„œλ„ 같은 λ¬Έμ œμž…λ‹ˆλ‹€. ν”„λ‘œμ„ΈμŠ€λ₯Ό μ’…λ£Œν•˜λŠ” λŒ€μ‹  κ΄€λ¦¬μžμ—κ²Œ SIGINT μ‹ ν˜Έλ₯Ό 두 개만 λ°œν–‰ν•˜μ—¬ ν•΄κ²°ν•©λ‹ˆλ‹€(제 κ²½μš°μ—λŠ” docker-compose ). μ΄λ ‡κ²Œ ν•˜λ©΄ μž‘μ—…μžκ°€ μ™„μ „νžˆ μ’…λ£Œλ©λ‹ˆλ‹€.

docker-compose μ‹€ν–‰ μž‘μ—…μž μ„œλΉ„μŠ€
그런 λ‹€μŒ CTRL + C
λ‚˜λ₯Ό μœ„ν•΄ μž‘λ™ν•©λ‹ˆλ‹€.

같은 λ¬Έμ œκ°€ μžˆμ§€λ§Œ rqλ₯Ό λ°±κ·ΈλΌμš΄λ“œ ν”„λ‘œμ„ΈμŠ€λ‘œ μ‹œμž‘ν•˜λ―€λ‘œ italomaia의 μˆ˜μ • 사항이 μ μš©λ˜μ§€ μ•ŠμŠ΅λ‹ˆλ‹€. 이 문제λ₯Ό ν•΄κ²°ν•  방법이 μžˆμŠ΅λ‹ˆκΉŒ?

rq worker $RQ_WORKER_NAME -u $REDIS_DB_URL &

예, κ·Έλƒ₯ ν‘œμ€€ 킬 μ‹ ν˜Έλ₯Ό λ³΄λ‚΄μ‹­μ‹œμ˜€.

ps -aux | grep "rq worker"

그런 λ‹€μŒ ν”„λ‘œμ„ΈμŠ€ ID (두 번째 숫자)λ₯Ό κ°€μ Έ μ™€μ„œ μ‹€ν–‰ν•˜μ‹­μ‹œμ˜€.

kill <proc id>
이 νŽ˜μ΄μ§€κ°€ 도움이 λ˜μ—ˆλ‚˜μš”?
0 / 5 - 0 λ“±κΈ‰