Мы используем PHP gearman рабочих для запуска различных задач параллельно. Все работает отлично, и у меня есть глупая оболочка script, чтобы развернуть их, когда я хочу их. Будучи программистом (и, следовательно, ленивым), я хотел посмотреть, могу ли я перевернуть их с помощью выскочки script.
Я понял, как использовать строфу экземпляра, поэтому я мог бы запустить их с номером экземпляра:
description "Async insert workers"
author "Mike Grunder"
env SCRIPT_PATH="/path/to/my/script"
instance $N
script
php $SCRIPT_PATH/worker.php
end script
И это отлично работает, чтобы начать их так:
sudo start async-worker N=1
sudo start async-worker N=2
То, как я хочу использовать этих работников, состоит в том, чтобы развернуть некоторое количество из них (возможно, по одному на ядро и т.д.), и я бы хотел сделать это при запуске. Чтобы быть ясным, мне не нужна выскочка script для определения количества ядер. Я рад просто сказать "сделать 8 экземпляров", но поэтому я хочу, чтобы несколько запусков. Есть ли способ использовать функцию "начать на" в выскочке script, чтобы сделать это автоматически?
Например, запустите экземпляр 1, 2, 3, 4? Затем, если они правильно завершат работу?
Я предполагаю, что я мог бы подключить это к init.d script, но мне было интересно, может ли upstart справиться с чем-то подобным, или если кто-то выяснил эту проблему.
Привет, ребята!