Предопределенные константы
Перечисленные ниже константы определены данным расширением и могут быть доступны только в том случае, если 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)