PHP и Gearman, что и как?
Доброго :)
Отвечаю на вопросы

— чем концептуально отличается GearmanJob от GearmanTask и какой из них следует использовать для оформления отложенного задания?

Job — это то, что поступает воркеру. 
Task — это то, что передает клиент

То есть клиент кидает Task на сервер очередей, там два агрумента — имя ф-и и сериализованные данные (в виде строки).
Если у воркера есть ф-я, указанная в Task, то есть он готов ее обработать, то он принимает задачу, а данные получает в виде Job. 
Извлекаются данные вот так (кусок реального кода):

function create_campaign(GearmanJob $job){

$rawData = $job->workload();
 $data = unserialize($rawData);
…

А передаются на сервер вот так (я использую не Task, а чуть проще — просто doBackground)

$gclient = new GearmanClient();
$gclient->addServer('localhost');

$new_offers = $client_db->select_new_offers();

if(is_array($new_offers) AND count($new_offers) > 0){
 foreach($new_offers as $item){
 $data_for_gearman = array(
 'item' => $item,
 'client_class_name' => 'axxa',
 );
 $gclient->doBackground('new_offer', serialize($data_for_gearman));
 }
}

echo «Для добавления товаров на сервер очередей добавлено ».count($new_offers)." задач \n";
Есть ли стандартный способ из клиентского скрипта посмотреть, что сейчас происходит с данной задачей, не запуская ее на выполнение вновь. если она выполнена?

Еще момент: воркер может в процессе выполнения передавать клиенту промежуточные данные.
Посмотрите, в моей публикации есть пример с кодом и видео