Gearman
PHP Manual

Предопределенные константы

Перечисленные ниже константы определены данным расширением и могут быть доступны только в том случае, если PHP был собран с поддержкой этого расширения или же в том случае, если данное расширение было подгружено во время выполнения.

Возвращаемые значения. Всегда проверяйте значение GearmanClient::error() или GearmanWorker(), содержащее строку с описанием ошибки, так как в этой строке может содержаться более детальная информация о последней операции:

GEARMAN_SUCCESS (integer)
Операция завершена успешно.
GEARMAN_IO_WAIT (integer)
В режиме без блокировок событие ожидает установку блокировки.
GEARMAN_ERRNO (integer)
Системная ошибка. Чтобы получить код ошибки, воспользуйтесь функцией GearmanClient::errno() или GearmanWorker::errno().
GEARMAN_NO_ACTIVE_FDS (integer)
На момент вызова GearmanClient::wait() или GearmanWorker() не было активных подключений.
GEARMAN_UNEXPECTED_PACKET (integer)
Означает, что что-то пошло совсем не так, как должно было. Применимо только к GearmanWorker.
GEARMAN_GETADDRINFO (integer)
Провал операции разрешения имен DNS (неверный порт, хост и т.п.).
GEARMAN_NO_SERVERS (integer)
Перед отправкой работы или задания не был вызван метод GearmanClient::addServer().
GEARMAN_LOST_CONNECTION (integer)
Во время обработки запроса прервалось соединение.
GEARMAN_MEMORY_ALLOCATION_FAILURE (integer)
Не удалось выделить память (недостаточно памяти).
GEARMAN_SERVER_ERROR (integer)
На сервере Gearman произошел сбой, и сервер не смог обработать запрос.
GEARMAN_WORK_DATA (integer)
Код-уведомление, который можно получить методом GearmanClient::returnCode() во время работы GearmanClient::do(). Выполняющий задание процесс (worker) посылает этот код, когда ему требуется обновить данные на клиенте, передать часть результатов работы или избавиться от ненужных данных во время выполнения долгих заданий.
GEARMAN_WORK_WARNING (integer)
Код-уведомление, который можно получить методом GearmanClient::returnCode() во время работы GearmanClient::do(). Принцип и поведение те же, что и в случае GEARMAN_WORK_DATA, однако этот код следует интерпретировать как предупреждение, которое обработчик задания передает клиенту.
GEARMAN_WORK_STATUS (integer)
Код-уведомление, который можно получить методом GearmanClient::returnCode() во время работы GearmanClient::do(). Обработчик задания посылает этот код, чтобы обновить текущее состояние выполняемого задания. С помощью метода GearmanClient::doStatus() можно узнать, какой процент работы уже выполнен.
GEARMAN_WORK_EXCEPTION (integer)
Код-уведомление, который можно получить методом GearmanClient::returnCode() во время работы GearmanClient::do(). Означает, что выполнение задания завершилось неудачей, и было выброшено заданное исключение.
GEARMAN_WORK_FAIL (integer)
Код-уведомление, который можно получить методом GearmanClient::returnCode() во время работы GearmanClient::do(). Означает, что работу выполнить не удалось.
GEARMAN_COULD_NOT_CONNECT (integer)
Не удалось подключиться к серверу.
GEARMAN_INVALID_FUNCTION_NAME (integer)
Это значение возвращается при попытке зарегистрировать NULL в качестве имени функции или при использовании callback-интерфейса без задания соответствующих функций обратного вызова.
GEARMAN_INVALID_WORKER_FUNCTION (integer)
Попытка зарегистрировать в обработчике функцию, передавая NULL в качестве функции обратного вызова.
GEARMAN_NO_REGISTERED_FUNCTIONS (integer)
Это значение означает, что обработчик получил задание для функции, которая в нем не зарегистрирована.
GEARMAN_NO_JOBS (integer)
Означает, что метод GearmanWorker::work() неблокирующего обработчика на данный момент не выполняет никакой работы.
GEARMAN_ECHO_DATA_CORRUPTION (integer)
Указывает, что после вызова GearmanClient::echo() или GearmanWorker::echo() возвращенные данные не соответствуют переданным.
GEARMAN_NEED_WORKLOAD_FN (integer)
Означает, что клиент выбрал потоковый режим передачи данных для обработки, но не задал callback-функцию для обработки данных из этого потока.
GEARMAN_PAUSE (integer)
При работе в неблокирующем режиме, это значение может вернуть callback-функция, чтобы приостановить обработку задания и выйти из метода GearmanClient::runTasks(). Чтобы продолжить работу, следует еще раз вызвать метод GearmanClient::runTasks().
GEARMAN_UNKNOWN_STATE (integer)
Состояние внутреннего взаимодействия клиента и обработчика неизвестно.
GEARMAN_SEND_BUFFER_TOO_SMALL (integer)
Внутренняя ошибка: попытка передать больше данных, чем помещается в один чанк. Размеры буфера жестко заданы и не подлежат изменению.
GEARMAN_TIMEOUT (integer)
Превышен таймаут ожидания, заданный клиентом - обработчиком.

Настройки GearmanClient:

GEARMAN_CLIENT_GENERATE_UNIQUE (integer)
Создавать уникальный id (UUID) для каждой задачи.
GEARMAN_CLIENT_NON_BLOCKING (integer)
Запускать клиента в неблокирующем режиме.
GEARMAN_CLIENT_UNBUFFERED_RESULT (integer)
Позволять клиенту читать данные и посылать их обратно в чанках вместо буферизации данных целиком средствами библиотеки.
GEARMAN_CLIENT_FREE_TASKS (integer)
Автоматически уничтожать объекты заданий после их выполнения. Эта настройка используется по умолчанию, чтобы предотвратить утечки памяти.

Настройки GearmanWorker:

GEARMAN_WORKER_NON_BLOCKING (integer)
Запускать обработчик заданий в неблокирующем режиме.
GEARMAN_WORKER_GRAB_UNIQ (integer)
Возвращать уникальный ID клиента, ассоциированный с обработчиком заданий.

Базовая конфигурация Gearman:

GEARMAN_DEFAULT_TCP_HOST (string)
GEARMAN_DEFAULT_TCP_PORT (integer)
GEARMAN_DEFAULT_SOCKET_TIMEOUT (integer)
GEARMAN_DEFAULT_SOCKET_SEND_SIZE (integer)
GEARMAN_DEFAULT_SOCKET_RECV_SIZE (integer)
GEARMAN_MAX_ERROR_SIZE (integer)
GEARMAN_PACKET_HEADER_SIZE (integer)
GEARMAN_JOB_HANDLE_SIZE (integer)
GEARMAN_OPTION_SIZE (integer)
GEARMAN_UNIQUE_SIZE (integer)
GEARMAN_MAX_COMMAND_ARGS (integer)
GEARMAN_ARGS_BUFFER_SIZE (integer)
GEARMAN_SEND_BUFFER_SIZE (integer)
GEARMAN_RECV_BUFFER_SIZE (integer)
GEARMAN_WORKER_WAIT_TIMEOUT (integer)


Gearman
PHP Manual