Проект Austin: онлайн-демонстрация и документация
Автор: 3y Zhong Fu Cheng.
Официальные каналы общения проекта:
Онлайн-демонстрация: http://106.75.176.183:3001.
Документация: https://www.yuque.com/u1047901/eg5qvy/hh0gk5p4uwie8bva.
11W+ слов, 107 документов.
Введение в проект Austin
Austin — это платформа для отправки сообщений, которая предоставляет унифицированный интерфейс для отправки различных типов сообщений и отслеживает жизненный цикл сообщений по всей цепочке.
Платформа Austin полезна для компаний, которым необходимо отправлять сообщения. Она позволяет централизовать отправку сообщений разных типов, что способствует консолидации функций и повышению эффективности разработки бизнес-требований.
Особенности проекта
-
Простота и удобство использования: быстрое подключение шаблонов через веб-страницу, простота в эксплуатации, быстрая настройка.
-
Многоканальная отправка сообщений: поддержка SMS, электронной почты, WeChat (сообщения на основе шаблонов), WeChat Mini Programs (подписка на сообщения), DingTalk (групповые боты и рабочие сообщения), Android push-уведомления, корпоративные WeChat (боты и приложения), Feishu (боты).
-
Изоляция ресурсов каналов: разные каналы не влияют друг на друга при отправке сообщений. Например, медленная отправка электронной почты не влияет на нормальную отправку SMS.
-
Отслеживание жизненного цикла сообщений по всем каналам: мониторинг процесса отправки сообщений с точки зрения пользователей, шаблонов и сообщений в реальном времени.
-
Конфигурируемая периодическая отправка сообщений группам пользователей: загрузка файлов с данными о группах пользователей и настройка отправки сообщений по расписанию с помощью выражений cron.
-
Динамические шаблоны сообщений: шаблоны поддерживают динамическую передачу параметров с использованием заполнителей.
-
Высокопроизводительный интерфейс отправки: асинхронный интерфейс отправки, поддерживающий пакетную отправку и способный обрабатывать высокий уровень параллелизма. Многоканальное управление материалами: материалы в формате Rich Text для WeChat и DingTalk необходимо заранее загрузить на многоканальную платформу.
Эффективное подключение к новому SMS-каналу: использование механизма правил Hades позволяет подключаться к новым SMS-каналам без необходимости публикации системы.
Регулируемый поток SMS: можно динамически настраивать долю трафика, отправляемого на каждый SMS-канал.
Особенности платформы отправки сообщений: поддержка отправки текстовых сообщений с учётом частоты и дублирования, возможность ночного блокирования сообщений или их отправки на следующий день.
Контейнеризация развёртывания: проект поддерживает развёртывание с использованием Docker, а промежуточное ПО проекта может быть развёрнуто с помощью docker-compose одним щелчком мыши.
Использование
- Создайте необходимые учётные записи каналов.
- Создайте шаблон сообщения.
- Протестируйте отправку сообщения, чтобы убедиться в её корректности.
- Просмотрите историю отправки сообщений.
- Также при создании нового шаблона можно выбрать задачу по расписанию. Для этого загрузите CSV-файл (https://www.yuque.com/office/yuque/0/2022/csv/1285871/1671865125068-b5385387-b4a4-41ac-a43e-bab54ee49d88.csv?from=https%3A%2F%2Fwww.yuque.com%2Fu1047901%2Fniffsu%2Fqqtese%2Fedit) и укажите выражение cron для отправки сообщения.
Развёртывание
Проект Austin сильно зависит от MySQL и Redis (потребуется около 2 ГБ памяти), слабо зависит от Kafka, Prometheus, Graylog, Flink, XXL-Job, Apollo и Hive (для полного развёртывания всех сервисов потребуется около 16 ГБ памяти). Если вам не хватает каких-либо компонентов, вы можете обратиться к руководству по установке (doc/INSTALL.md).
Если вы хотите клонировать проект и не хотите самостоятельно развёртывать среду, вы можете напрямую запустить отладку на локальном сервере. Я предоставляю услуги хостинга (https://www.yuque.com/u1047901/eg5qvy/hh0gk5p4uwie8bva), которые позволяют подключиться к уже развёрнутому серверу.
- В настоящее время проект Austin использует версию MySQL 5.7x. Если вы используете версию MySQL 8.0, обратите внимание на изменение версии, указанной в pom.xml, и соответствующей информации о подключении.
- Введите информацию об IP, порте, имени пользователя и пароле в файле application.properties.
- Выполните файл austin.sql в папке doc/sql для создания соответствующих таблиц.
- Введите информацию об IP и порте Redis в файле application.properties, а также пароль.
- Вся эта информация находится в файле application.properties в папке austin-web/src/main/resources. (Prometheus, Graylog, Flink, XXL-Job, Apollo, Kafka и Hive являются необязательными).
- Разверните систему управления передним интерфейсом Austin, перейдя на GitHub (https://github.com/ZhongFuCheng3y/austin-admin) или Gitee (https://gitee.com/zhongfucheng/austin-admin).
- (Необязательно) Для нормального использования данных управления (просмотра данных в реальном времени) необходимо загрузить jar-пакет Austin-Stream на Flink и запустить Flink в соответствии с документацией по развёртыванию (doc/INSTALL.md). Перед созданием jar-пакета необходимо заполнить константы com.java3y.austin.stream.constants.AustinFlinkConstant с указанием IP и порта Redis и Kafka (обратите внимание: тема журнала находится в application.properties под именем austin.business.log.topic.name. Если этой темы нет, её нужно создать заранее, используя Kafka в качестве очереди сообщений).
- (Необязательно) Для нормальной работы задач по расписанию необходимо развернуть XXL-Job в соответствии с руководством по развёртыванию (doc/INSTALL.md) и запустить центр планирования XXL. Затем введите информацию об IP и порту в файле application.properteis.
- (Необязательно) Для нормальной работы сбора распределённых журналов необходимо развернуть Graylog в соответствии с руководством по развёртыванию (doc/INSTALL.md), а затем ввести информацию об IP в файле application.properteis.
- (Необязательно) Для нормальной работы мониторинга системы необходимо развернуть Promethus и Grafana в соответствии с руководством по развёртыванию (doc/INSTALL.md), а затем настроить графики в Grafana.
- (Необязательно) Для нормальной работы центра динамической конфигурации необходимо развернуть Apollo в соответствии с руководством по развёртыванию (doc/INSTALL.md), а затем запустить Apollo с помощью docker-compose. Информацию об IP и порте необходимо ввести в AustinApplication (см. комментарии).
- (Необязательно) Для нормальной работы хранилища данных необходимо развернуть Hive в соответствии с руководством по развёртыванию (doc/INSTALL.md), а затем использовать Flink для записи данных в Hive. Необходимо отправить jar-пакет austin-data-house на Flink для выполнения.
Официальная группа проекта
В официальной группе проекта Austin уже более 200 участников. Чтобы присоединиться, добавьте мой личный номер WeChat java3yyy и отметьте «Проект» при добавлении. У меня есть свободное время, я могу пригласить вас в группу проекта.
Документация проекта
Более 11 Вт слов, всего 107 документов, которые помогут вам разобраться в проекте Austin. Подробности можно найти в документации по платформе отправки сообщений (https://www.yuque.com/u1047901/eg5qvy/hh0gk5p4uwie8bva).

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