Настраиваем gearman с хранением очередей в postgres
Настраиваем gearman с хранением очередей в postgres Для начало добавим в список источников /etc/apt/sources.list :
deb http://ppa.launchpad.net/gearman-developers/ppa/ubuntu raring main
Затем ключ репозитория:
sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys NUMBER
NUMBER – можно посмотреть запусти apt-get update, при попытке обновить система укажит, что данный ключ не указан и его надо будет добавить, вместо NUMBER Теперь ставим сам gearman :
sudo apt-get install gearman-job-server libgearman6 libgearman-dev gearman-tools
Далее настроим сервер, открываем /etc/default/gearman-job-server и приводим к следующему виду :
export PGHOST=localhost
export PGPORT=5432
export PGUSER=gearman
export PGPASSWORD=123456
export PGDATABASE=gearman
PARAMS= -q Postgres --libpq-table=gearmanqueue
—libpq-table – имя созданной таблице в БД postgres Теперь в БД создадим таблицу, у меня размер unique_key = 32, так как я использую библиотеку php net_gearman и там для задания unique_key это md5 названия функции и массива параметров, если используете другую библиотеку, то значение может быть иным
CREATE TABLE gearmanqueue ( unique_key VARCHAR(32),
function_name VARCHAR(255),
priority INTEGER,
data BYTEA,
when_to_run INTEGER,
UNIQUE (unique_key, function_name));
Теперь запускаем сервер
/etc/init.d/gearman-job-server restart
По работе с остальными БД, можно посмотреть на сайте http://gearman.info