2014-07-07 5 views
0

으로 다시 시작합니다. Gearman에 머물러 있습니다. 나는 잘 작동하는 ulabox gearman Bundle을 구현하고있었습니다. 그러나 내가 아직 해달라고하지 않는 두 가지가 있습니다.Gearman Worker는 ulabox symfony 플러그인

  • 어떻게 작업자를 시작합니까 ?? 문서를 작성하기 전에 작업자를 먼저 실행하고 코드를 시작해야합니다.

https://github.com/ulabox/GearmanBundle/blob/master/README.md

열기 최초의 콘솔 및 실행 :

$의 PHP 응용 프로그램/콘솔 Gearman을을 : 직원 : AcmeWorker

이제 다른 콘솔을 열고 실행 --worker = AcmeDemoBundle 실행 :

$의 PHP 응용 프로그램/콘솔 Gearman을 : 클라이언트 : 실행 --client = UlaboxGearmanBundle : GearmanClient : 그래서 hello_world --worker = AcmeDemoBundle : AcmeWorker --params = "{\"foo는 \를 : 바 \ "\" "}"

그래서 수동으로 작업자를 시작하지 않으면 작업 자체가 완료됩니다. 내가 노동자를 시작하면 영원히 행복하다. 그러나 적어도 x의 반복이 설정되어 있어도 작업자가 그 일을 끝내면 스스로를 죽일지라도 수동으로 시작하는 것이 이상한 일입니다.

그래서, 사람이 밖으로 나를 도울 수하십시오 ((((

Heeeeeelp을 :) 롤 사전에

감사 종류의 일부를 실행하는

답변

0

예에 관하여 작업은 Gearman뿐 아니라 작업자도 실행해야합니다. 일부 명령 (예 : 전자 메일 보내기)을 기다리는 "gearman"을 실행했습니다. 또한 대기중인 작업자가 있습니다.

기어맨보기 새 명령을 사용하면 첫 번째 무료 작업자를 찾고이 명령을 전달합니다. 명령에 대한 다음 작업자 프로세스 실행 및 완료 후 Gearman 서버로 돌아가 완료되고 새 명령을 처리 할 준비가되었습니다.

더 많은 작업자가 처리 된 대기열에 더 빠른 명령을 가지고 있습니다.

자동 유지 보수 작업자를 실행하는 데 "수퍼바이저"를 사용할 수 있습니다. 우는 당신은 더 많은 정보를 몇 가지 링크를 찾을 수 있습니다

http://www.daredevel.com/php-jobs-with-gearman-and-supervisor/ http://www.masnun.com/2011/11/02/gearman-php-and-supervisor-processing-background-jobs-with-sanity.html Running Gearman Workers in the Background

+0

가이 Gearman을-관리자가 무엇을하고 있는지 정확히 아닙니까? 심포니에서 Manager를 포함하는 번들을 찾지 못했습니다. Manager가 잘 수행 되었기 때문에 이것은 이상합니다. 자신의 모든 것을 처리 할 수 ​​있습니다. 감독관이 노동자를 다루는 일반적인 방법입니까 아니면 다른 가능성이 있습니까? – TheTom

+0

gearman-manager의 의미는 무엇입니까? 관리자는 노동자를 운영하는 데 사용되지만 그 밖의 것은 없습니다. –

+0

오, 내 측면에서 중요한 정보가 누락되었습니다. symfony2를 사용하고 있습니다. 거기에서 ulaboxBundle이 설치됩니다. 따라서 작업자는 테스트를 위해 만든 번들로 구현됩니다. usr/bin/php를 사용해야합니까?그 사람은 내가 PHP로 콘솔에서 호출 할 수 없기 때문에 [code] php app/console gearman : worker : execute --worker = PrGwBundle : PrWorker [/ code] – TheTom