Следующие константы определяются модулем и доступны, только если модуль либо собрали в PHP, либо динамически загрузили при выполнении кода.
Возвращаемые значения. Всегда проверяйте значение GearmanClient::error() или GearmanWorker(), содержащее строку с описанием ошибки, так как в этой строке может содержаться более детальная информация о последней операции:
GEARMAN_SUCCESS
(int)
Операция была завершена успешно.
GEARMAN_IO_WAIT
(int)
В режиме без блокировок событие ожидает установку блокировки.
GEARMAN_ERRNO
(int)
Системная ошибка. Чтобы получить код ошибки, воспользуйтесь функцией GearmanClient::errno() или GearmanWorker::errno().
GEARMAN_NO_ACTIVE_FDS
(int)
На момент вызова GearmanClient::wait() или GearmanWorker() не было активных подключений.
GEARMAN_UNEXPECTED_PACKET
(int)
Означает, что что-то пошло совсем не так, как должно было. Применимо только к GearmanWorker.
GEARMAN_GETADDRINFO
(int)
Неудачная операция разрешения имён DNS (неверный порт, хост и т.п.).
GEARMAN_NO_SERVERS
(int)
Перед отправкой задания или задачи не был вызван метод GearmanClient::addServer().
GEARMAN_LOST_CONNECTION
(int)
Во время обработки запроса прервалось соединение.
GEARMAN_MEMORY_ALLOCATION_FAILURE
(int)
Не удалось выделить память (недостаточно памяти).
GEARMAN_SERVER_ERROR
(int)
На сервере Gearman произошёл сбой, и сервер не смог обработать запрос.
GEARMAN_WORK_DATA
(int)
Код возврата уведомления, который можно получить методом GearmanClient::returnCode() во время работы GearmanClient::do(). Выполняющий задание обработчик (worker) посылает этот код, когда ему требуется обновить данные на клиенте, передать часть результатов работы или сбросить данные во время выполнения долгих заданий.
GEARMAN_WORK_WARNING
(int)
Код возврата уведомления, который можно получить методом
GearmanClient::returnCode() во время работы
GearmanClient::do(). Обновляет клиент с отправкой
предупреждением. Поведение те же, что и в случае
GEARMAN_WORK_DATA, однако
этот код следует интерпретировать как предупреждение вместо обычных данных
ответа.
GEARMAN_WORK_STATUS
(int)
Код возврата уведомления, который можно получить методом GearmanClient::returnCode() во время работы GearmanClient::do(). Обработчик задания посылает этот код, чтобы обновить статус долго выполняемого задания. Используйте GearmanClient::doStatus() для получения процента завершения работы.
GEARMAN_WORK_EXCEPTION
(int)
Код возврата уведомления, который можно получить методом GearmanClient::returnCode() во время работы GearmanClient::do(). Указывает, что выполнение задания завершилось неудачей с заданным исключением.
GEARMAN_WORK_FAIL
(int)
Код возврата уведомления, который можно получить методом GearmanClient::returnCode() во время работы GearmanClient::do(). Указывает, что задание выполнить не удалось.
GEARMAN_COULD_NOT_CONNECT
(int)
Не удалось подключиться к серверу.
GEARMAN_INVALID_FUNCTION_NAME
(int)
Это значение возвращается при попытке зарегистрировать NULL в качестве имени функции или при использовании callback-интерфейса без указания callback-функций.
GEARMAN_INVALID_WORKER_FUNCTION
(int)
Попытка зарегистрировать в обработчике функцию, передавая NULL в качестве callback-функции.
GEARMAN_NO_REGISTERED_FUNCTIONS
(int)
Когда обработчик получил задание для функции, которая в нем не зарегистрирована.
GEARMAN_NO_JOBS
(int)
Для неблокирующего обработчика, когда GearmanWorker::work() не имеет активных заданий.
GEARMAN_ECHO_DATA_CORRUPTION
(int)
Указывает, что после вызова GearmanClient::echo() или GearmanWorker::echo() возвращённые данные не соответствуют переданным.
GEARMAN_NEED_WORKLOAD_FN
(int)
Когда клиент выбрал потоковый режим передачи данных для обработки, но не задал callback-функцию для обработки данных из этого потока.
GEARMAN_PAUSE
(int)
При работе в неблокирующем режиме, это значение может вернуть callback-функция, чтобы приостановить обработку задания и выйти из метода GearmanClient::runTasks(). Чтобы продолжить работу, следует ещё раз вызвать метод GearmanClient::runTasks().
GEARMAN_UNKNOWN_STATE
(int)
Внутренняя ошибка клиента/обработчика.
GEARMAN_SEND_BUFFER_TOO_SMALL
(int)
Внутренняя ошибка: попытка передать больше данных, чем помещается в один чанк. Размеры буфера жёстко заданы и не подлежат изменению.
GEARMAN_TIMEOUT
(int)
Превышено время ожидания, заданный клиентом/обработчиком.
Настройки GearmanClient:
GEARMAN_CLIENT_GENERATE_UNIQUE
(int)
Создавать уникальный идентификатор (UUID) для каждой задачи.
GEARMAN_CLIENT_NON_BLOCKING
(int)
Запускать клиента в неблокирующем режиме.
GEARMAN_CLIENT_UNBUFFERED_RESULT
(int)
Позволять клиенту читать данные и посылать их обратно в чанках вместо буферизации данных целиком средствами библиотеки.
GEARMAN_CLIENT_FREE_TASKS
(int)
Автоматически уничтожать объекты задач после их выполнения. Эта настройка используется по умолчанию, чтобы предотвратить утечки памяти.
Настройки GearmanWorker:
GEARMAN_WORKER_NON_BLOCKING
(int)
Запускать обработчик заданий в неблокирующем режиме.
GEARMAN_WORKER_GRAB_UNIQ
(int)
Возвращать клиенту уникальный идентификатор в дополнение к дескриптору задания.
Базовая конфигурация Gearman:
GEARMAN_DEFAULT_TCP_HOST
(string)
GEARMAN_DEFAULT_TCP_PORT
(int)
GEARMAN_DEFAULT_SOCKET_TIMEOUT
(int)
GEARMAN_DEFAULT_SOCKET_SEND_SIZE
(int)
GEARMAN_DEFAULT_SOCKET_RECV_SIZE
(int)
GEARMAN_MAX_ERROR_SIZE
(int)
GEARMAN_PACKET_HEADER_SIZE
(int)
GEARMAN_JOB_HANDLE_SIZE
(int)
GEARMAN_OPTION_SIZE
(int)
GEARMAN_UNIQUE_SIZE
(int)
GEARMAN_MAX_COMMAND_ARGS
(int)
GEARMAN_ARGS_BUFFER_SIZE
(int)
GEARMAN_SEND_BUFFER_SIZE
(int)
GEARMAN_RECV_BUFFER_SIZE
(int)
GEARMAN_WORKER_WAIT_TIMEOUT
(int)