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