2012-04-25 4 views
0

페이스 북과 트위터에서 소셜 컨텐츠를 집계하기 위해 셀러리 작업을 개발하고 있습니다. redis가있는 셀러리가 잘 작동하지 않습니다.

'facebook_service_handler'와 'facebook_contents_handler'작업 save_contents_info

  • facebook_service_handler
  • facebook_contents_handler image_resize
  • 을 다음과 같은

    작업 urlopen 기능으로 페이스 북의 공개 API를 사용합니다.

    urlopen 요청이 많지 않은 경우 잘 작동합니다. (4 ~ 5 회 미만) 하지만 urlopen 요청이 4 ~ 5를 초과하면 작업자가 더 이상 작동하지 않습니다.

    도 셀러리가 중지되면 redis와 celeryd를 깨고 celeryd와 redis를 다시 시작합니다. 마지막 작업이 실행됩니다

    어떤 몸이라도이 문제에 대해 도움이 되나요 ??

    나는 mac os lion에서 작업 중입니다.

답변

2

이상적으로 네트워크 I/O (다른 프로세스를 "올릴 수있는 이벤트 릿 (eventlet)"사용)과 다른 작업 (다중 처리 사용)을위한 두 개의 다른 대기열이 있어야합니다. 복잡한 문제인 경우 CELERYD_TASK_SOFT_TIME_LIMIT을 살펴보십시오. 샐러리 작업 내에서 urllib.open을 사용할 때 비슷한 문제가 발생했습니다. 연결이 끊어 지거나 전체 시스템이 엉망이 될 수 있습니다.

+0

답변 해 주셔서 감사합니다. 나는 내 문제를 해결했다. 사실, 그것은 바보 같은 문제였습니다. 낮은 동시성 옵션으로 인해 발생합니다. 그러나 당신의 대답은 나를 더 똑똑하게 만드는 데 도움이됩니다. 감사! ^^ – shchoi

관련 문제