1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/mirrors-DDMQ

Присоединиться к Gitlife
Откройте для себя и примите участие в публичных проектах с открытым исходным кодом с участием более 10 миллионов разработчиков. Приватные репозитории также полностью бесплатны :)
Присоединиться бесплатно
Клонировать/Скачать
README.md 4.8 КБ
Копировать Редактировать Web IDE Исходные данные Просмотреть построчно История
gitlife-traslator Отправлено 01.12.2024 23:50 206a813

Английский | 中文

DDMQ Producer Proxy

Producer Proxy (PProxy) — это модуль-производитель DDMQ. PProxy отвечает за пересылку сообщений в механизм хранения сообщений (RocketMQ или Kafka). PProxy предоставляет такие функции, как ограничение скорости, автоматическая пакетная обработка и автоматическое повторение попыток.

Thrift IDL

struct Result {
	1: i32 код
	2: строка msg
	3: необязательная строка key
}

struct Message {
    1: строка topic;			                    // topic
    2: строка key;				                    // уникальный ключ для отслеживания или получения раздела
    3: строка value;			                    // тело сообщения
    4: i64 hashId;                                  // hashId для раздела kafka.
    5: строка tags;                                 // теги для сообщения RocketMQ.
    6: i32 partitionId = -1;                        // идентификатор раздела для kafka, -1: использовать hashId; -2: случайное число для получения
    7: необязательное двоичное body;	                    // двоичное тело сообщения
    8: необязательная строка version;                     // версия SDK
    9: необязательный map<строка, строка> properties      // свойства
}

struct DelayResult {
	1: i32 код
	2: строка msg
	3: строка uniqDelayMsgId                    // уникальный идентификатор для отложенного сообщения, может использоваться для отмены или отслеживания отложенного сообщения
}

struct DelayMessage {
    1: строка topic;                                // тема
    2: необязательная строка uniqDelayMsgId;		        // используется для отмены или отслеживания сообщения
    3: необязательное binary body;	                    // двоичное тело сообщения
    4: строка tags;                                 // теги для отложенного сообщения
    5: i32 действие;                                  // действие, 1: добавить; 2: отменить
    6: необязательная i64 timestamp;			            // отметка времени для запуска
    7: необязательная i32 dmsgtype;                       // dmsgtype, 2: задержка; 3: циклическая задержка
    8: необязательная i64 interval                        // интервал циклического сообщения, если не циклический, просто оставьте его
    9: необязательная i64 expire;                         // время истечения срока действия
    10: необязательная i64 times;                         // количество циклов
    11: необязательная строка uuid;                       // uuid для отложенного сообщения
    13: необязательная строка version;                    // версия SDK
    14: необязательный map<string, string> properties     // свойства
}

service ProducerService {
    // синхронная отправка обычного сообщения
    Result sendSync(1: Message message, 2: i64 timeout)

    // синхронизированная отправка пакета обычных сообщений
    Result sendBatchSync(1: список<Message> messages)

    // асинхронная отправка обычного сообщения
    Результат sendAsync(1: Сообщение message)

    // синхронно отправить отложенное сообщение
    DelayResult sendDelaySync(1: DelayMessage delayMessage, 2: i64 timeout)
}

Развёртывание

  • изменить carrera.yaml
zookeeperAddr: 127.0.0.1:2181/carrera/v4/config # здесь адрес кластера zk config.
host: 127.0.0.1 # опциональный IP прокси
port: 9613 # порт сервера thrift.
  • вызвать консольный API для привязки pproxy
  • запустить build.sh для сборки пакета
  • запустите pproxy с помощью control.sh start

Опубликовать ( 0 )

Вы можете оставить комментарий после Вход в систему

1
https://api.gitlife.ru/oschina-mirror/mirrors-DDMQ.git
git@api.gitlife.ru:oschina-mirror/mirrors-DDMQ.git
oschina-mirror
mirrors-DDMQ
mirrors-DDMQ
master