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

OSCHINA-MIRROR/snail-wmq-go

Присоединиться к Gitlife
Откройте для себя и примите участие в публичных проектах с открытым исходным кодом с участием более 10 миллионов разработчиков. Приватные репозитории также полностью бесплатны :)
Присоединиться бесплатно
Клонировать/Скачать
Внести вклад в разработку кода
Синхронизировать код
Отмена
Подсказка: Поскольку Git не поддерживает пустые директории, создание директории приведёт к созданию пустого файла .keep.
Loading...
README.md

WMQ

Обёртка очереди сообщений, основанная на RabbitMQ, поддерживает протокол HTTP.

stable license download_count download

Рекомендованы ОС Linux, в Windows не работает API «12. Получить или найти последние 100 строк содержимого журнала».

Требования

Вы можете найти предварительно скомпилированный двоичный файл здесь: https://gitee.com/snail/wmq-go/releases или https://github.com/snail007/wmq/releases.
Это консоль с веб-интерфейсом для управления WMQ: https://github.com/phachon/wmq-admin.
Спасибо @phachon!

Использование:

Использование wmq:
--api-disable                  отключить службу API
--api-token string             токен доступа (по умолчанию «guest»)
--data-example                 распечатать пример файла данных
--data-file string             файл, который будет хранить сообщения (по умолчанию message.json)
--fail-wait int                доступ к URL потребителя не удался, затем сколько миллисекунд
                                спать (по умолчанию 50 000)
--ignore-headers stringSlice   эти заголовки HTTP будут игнорироваться при доступе к URL потребителя,
                                несколько разделены запятой (,)
--level string                 уровень журнала консоли, должен быть одним из debug, info, warn, error
                                (по умолчанию «debug»)
--listen-api string            порт службы API (по умолчанию «0.0.0.0:3302»)
--listen-publish string        порт службы публикации (по умолчанию «0.0.0.0:3303»)
--log-access                   включить или отключить журнал доступа (по умолчанию true)
--log-dir string               каталог, в котором хранятся файлы журналов (по умолчанию log)
--log-level stringSlice        журнал в файл уровня, несколько разделены запятой (,),
                                по умолчанию [info,error,debug]
--log-max-count int            максимальное количество файлов журнала для поворота (по умолчанию 3)
--log-max-size int             максимальный размер файла журнала (в байтах) для поворота (по умолчанию 102 400 000)
--mq-host string               хост, который будет использоваться при подключении к RabbitMQ (по умолчанию «127.0.0.1»)
--mq-password string           пароль, который будет использоваться при подключении к RabbitMQ (по умолчанию guest)
--mq-port int                  порт, который будет использоваться при подключении к RabbitMQ (по умолчанию 5672)
--mq-prefix string             префикс по умолчанию для очереди и обмена (по умолчанию wmq.)
--mq-username string           логин, который будет использоваться при подключении к RabbitMQ (по умолчанию guest)
--mq-vhost string              виртуальный хост, который будет использоваться при подключении к RabbitMQ (по умолчанию /)
--realip-header string         издательский реальный IP будет установлен в этом заголовке HTTP при
                                доступе к URL потребителя (по умолчанию X-Forwarded-For)
--version                      показать версию о текущем WMQ

Публикация сообщения

Примечание: порт публикации по умолчанию — 3303.

  1. Опубликовать сообщение. Примечание: любые «тело запроса», «параметры получения» и «заголовок HTTP» отправляются в «публикацию», они будут такими же, как когда WMQ обращается к URL потребителя. Запрос: протокол: http метод: get или post путь: /: имя?: query_string //: name — это имя сообщения, :query_string — любая строка запроса, которая вам нужна заголовок: Токен: строка //токен сообщения, если токен не нужен, оставьте его пустым RouteKey: строка //ключ маршрутизации сообщения, если ключ не нужен, оставьте его пустым. Ответ: httpcode: 204|500 //204: означает успех, 500: означает сбой и вывод — информация об ошибке.

Управление

Примечание: порт управления по умолчанию — 3302.

  1. Добавить сообщение. Запрос: Протокол: HTTP Метод: GET Путь: /message/add Параметры: Имя: строка //сообщение 1. Описание структуры данных сообщения

name, должно быть уникальным Comment: string // комментарий Durable: 1|0 // долговечное или нет, 1: true, 0: false IsNeedToken: 1|0 // нужен токен или нет при публикации этого типа сообщения, 1: true, 0: false Mode: string // должен быть один из fanout, topic, direct Token: string // должен быть установлен, когда IsNeedToken равен 1, в противном случае оставить пустым api-token: string // токен API устанавливается в конфигурации callback: string // имя функции обратного вызова для вызова JSONP, если нет вызова JSONP, оставить пустым response: type: json column: code: 1|0 // 1 означает успех, 0 означает сбой example: no jsonp: {code:1, data:null} или {code:0, data:"some error"} jsonp: callbackxxx({code:1,data:null}) или callbackxxx({code:0,data:"some error"})

2. Обновление сообщения request: protocol: http method: get path: /message/update parameters: Name: string // имя сообщения Comment: string // комментарий Durable: 1|0 // долговечное или нет, 1: true, 0: false IsNeedToken: 1|0 // нужен токен или нет при публикации этого типа сообщения, 1: true, 0: false Mode: string // должен быть один из fanout, topic, direct Token: string // должен быть установлен, когда IsNeedToken равен 1, в противном случае оставить пустым api-token: string // токен API устанавливается в конфигурации callback: string // имя функции обратного вызова для вызова JSONP, если нет вызова JSONP, оставить пустым response: type: json column: code: 1|0 // 1 означает успех, 0 означает сбой example: no jsonp: {code:1, data:null} или {code:0, data:"some error"} jsonp: callbackxxx({code:1,data:null}) или callbackxxx({code:0,data:"some error"})

3. Удаление сообщения request: protocol: http method: get path: /message/delete parameters: Name: string // имя сообщения api-token: string // токен API устанавливается в конфигурации callback: string // имя функции обратного вызова для вызова JSONP, если нет вызова JSONP, оставить пустым response: type: json column: code: 1|0 // 1 означает успех, 0 означает сбой example: no jsonp: {code:1, data:null} или {code:0, data:"some error"} jsonp: callbackxxx({code:1,data:null}) или callbackxxx({code:0,data:"some error"})

4. Добавление потребителя request: protocol: http method: get path: /consumer/add parameters: Name: string // имя потребителя URL: string // URL потребителя сообщения Timeout: int // миллисекунды ожидания ответа при доступе к URL, обычно: 3000 Code: int // код HTTP, этот код определяет, был ли доступ к URL успешным или неудачным, обычно это 200 CheckCode: 1|0 // проверять ли ответный код HTTP при доступе к URL, 1:true, 0:false Comment: string // комментарий потребителя RouteKey: string // ключ маршрутизации Token: string // должен быть установлен, когда IsNeedToken равен 1, в противном случае оставить пустым api-token: string // токен API устанавливается в конфигурации callback: string // имя функции обратного вызова для вызова JSONP, если нет вызова JSONP, оставить пустым response: type: json column: code: 1|0 // 1 означает успех, 0 означает сбой example: no jsonp: {code:1, data:null} или {code:0, data:"some error"} jsonp: callbackxxx({code:1,data:null}) или callbackxxx({code:0,data:"some error"})

5. Обновление потребителя request: protocol: http method: get path: /consumer/update parameters: Name: string // имя потребителя ID: string // ID потребителя URL: string // URL потребителя сообщения Timeout: int // миллисекунды ожидания ответа при доступе к URL, // обычно : 3000 Code: int // HTTP код, этот код решает, был ли доступ к URL успешным или неудачным Обычно это 200.

CheckCode: 1|0 //проверять ли код ответа HTTP при доступе к URL, 1: true, 0: false

Комментарий: string //комментарий потребителя

RouteKey: string //ключ маршрутизации

Token: string //должен быть установлен, когда IsNeedToken равен 1, в противном случае оставить пустым

api-token: string //токен API устанавливается в конфигурации

callback: string //имя функции обратного вызова для вызова JSONP, если вызов JSONP не требуется, оставить пустым

Ответ:

Тип: JSON

Столбец:

Код: 1|0 //1 означает успех, 0 означает неудачу

Пример:

Без JSONP: {код: 1, данные: null} или {код: 0, данные: «некая ошибка»}

JSONP: callbackxxx({код: 1, данные: null}) или callbackxxx({код: 0, данные: «некоторая ошибка»)

  1. Удалить потребителя

Запрос:

Протокол: HTTP

Метод: GET

Путь: /consumer/delete

Параметры:

Имя: string //имя сообщения

ID: string //ID потребителя

api-token: string//токен API устанавливается в конфигурации

обратный вызов: строка //имя функции обратного вызова для вызова JSONP, если вызов JSONP не требуется, оставить пустым

Ответ:

тип: JSON столбец: код: 1|0 //1 означает успех , 0 означает неудачу пример: без JSONP:{code:1,data:null} или {code:0,data:"some error"} JSONP:callbackxxx({code:1,data:null}) или callbackxxx({code:0,data:"some error"})

  1. Перезапустить службу

Запрос: протокол: http метод: get путь: /restart параметры: api-токен: string //токен API устанавливается в конфигурации обратный вызов: string //имя функции обратного вызова для вызова jsonp, если вызов jsonp не требуется, оставить пустым

ответ: тип: json столбец: код: 1|0 //1 означает успех , 0 означает неудачу пример: no jsonp:{code:1,data:null} or {code:0,data:"some error"} jsonp:callbackxxx({code:1,data:null}) or callbackxxx({code:0,data:"some error"})

  1. Перегрузить службу

запрос: протокол: http метод: get путь: /reload параметры: api-токен: string //токен API устанавливается в конфигурации обратный вызов: string //имя функции обратного вызова для вызова jsonp, если вызов jsonp не требуется, оставить пустым

ответ: тип: json столбец: код: 1|0 //1 означает успех , 0 означает неудачу пример: no jsonp:{code:1,data:null} or {code:0,data:"some error"} jsonp:callbackxxx({code:1,data:null}) or callbackxxx({code:0,data:"some error"})

  1. Получить конфигурацию сообщений

запрос: протокол: http метод: get путь: /config параметры: api-токен: string //токен API устанавливается в конфигурации обратный вызов: string //имя функции обратного вызова для вызова jsonp, если вызов jsonp не требуется, оставить пустым

ответ: тип: json столбец: код: 1|0 //1 означает успех , 0 означает неудачу пример: no jsonp: { "code": 1, "data": [{ "Durable": false, "IsNeedToken": true, "Mode": "topic", "Name": "test", "Token": "JQJsUOqYzYZZgn8gUvs7sIinrJ0tDD8J" "Comment": "", "Consumers": [{ "Comment": "", "ID": "111", "Code": 200, "CheckCode": true

Комментарии ( 0 )

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

Введение

Очередь сообщений, основанная на протоколе RabbitMQ, поддерживает протокол HTTP. Развернуть Свернуть
GPL-3.0
Отмена

Обновления (1)

все

Участники

все

Недавние действия

Загрузить больше
Больше нет результатов для загрузки
1
https://api.gitlife.ru/oschina-mirror/snail-wmq-go.git
git@api.gitlife.ru:oschina-mirror/snail-wmq-go.git
oschina-mirror
snail-wmq-go
snail-wmq-go
master