Перейти к основному содержимому

pgq-coop. Организация кооперативных очередей сообщений

Версия: 3.4.

В исходном дистрибутиве установлено по умолчанию: нет.

Связанные компоненты: pgq.

Схема размещения: pgq_coop.

Описание

Опциональное расширение, реализованное на языке plpgsql и предназначенное для организации кооперативных очередей. Для одного генератора сообщений могут присутствовать несколько получателей.

Функции

ФункцияВходные параметрыОписание
finish_batchi_batch_id, int8Завершает сеанс по его идентификатору batch_id. Решение принимается солидарно для каждого отдельного получателя
next_batch- i_queue_name, text;

- i_consumer_name, text;

- i_subconsumer_name, text \[i_dead_interval interval\]
Предоставляет информацию о сеансе для получателя. Аналог функции pgq.next_batch
next_batch_custom- i_queue_name, text;

-i_consumer_name, text;

- i_subconsumer_name, text;

- i_min_lag, interval;

- i_min_count, integer;

- i_min_interval, interval, \[i_dead_interval, interval\]
Предоставляет расширенную информацию о сеансе. Аналог функции pgq.next_batch_custom
register_subconsumer- i_queue_name, text;

- i_consumer_name, text;

- i_subconsumer_name, text;

- i_subconsumer_name, text
Регистрирует получателя сообщения в очереди
unregister_subconsumer- i_queue_name, text;

-i_consumer_name, text;

- i_subconsumer_name, text;

- i_batch_handling, integer
Отменяет регистрацию получателя

Доработка

Доработка не проводилась.

Ограничения

Требуется предварительная установка расширения pgq.

Установка

Установка расширения (ОС «Альт», Astra Linux):

sudo apt-get install /usr/pangolin-6.3/3rdparty/pgq_coop/pangolin-pgq-coop-3.4-{OS}.x86_64.rpm -y

Для других ОС:

sudo dnf install /usr/pangolin-6.3/3rdparty/pgq_coop/pangolin-pgq-coop-3.4-{OS}.x86_64.rpm -y

Модуль считается «доверенным», поэтому его могут устанавливать пользователи, имеющие право CREATE в текущей базе данных:

CREATE EXTENSION pgq_coop;

Настройка

Настройка не требуется.

Ссылки на документацию разработчика

Функции расширения PgQ-coop: https://github.com/pgq/pgq-coop.