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

OSCHINA-MIRROR/xtoon-xtoon-cloud

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

xtoon-cloud: микросервисная разработка на основе DDD и поддержка SaaS-платформы

Это микросервисный фреймворк для разработки, основанный на доменно-ориентированном дизайне (DDD).

Основные характеристики:

  • Поддержка SaaS-платформ.
  • Микросервисная архитектура.
  • Основан на DDD.

Фреймворк предоставляет полный план реализации и корпоративную архитектуру микросервисов. Он также предлагает быстрое развитие благодаря наличию основных модулей управления системой и организационной структуры. Поддерживает мультитенантные SaaS-платформы.

Проект xtoon-boot доступен в виде монолита и микросервиса.

Почему стоит выбрать xtoon-cloud?

  • Решает проблемы с написанием сложного и транзакционного кода, что приводит к трудностям при обслуживании и поддержке логики в будущем.
  • Границы легко поддерживать, а основная бизнес-логика сосредоточена в домене, обеспечивая низкую связанность и высокую сплочённость, что упрощает долгосрочное обслуживание.
  • Предоставляет полное решение для внедрения DDD и корпоративной микросервисной архитектуры.
  • Позволяет быстро разрабатывать приложения благодаря наличию основных системных модулей.
  • Поддерживает многопользовательские SaaS-платформы.

В проекте используется Spring Cloud Alibaba в качестве базовой инфраструктуры, Spring Cloud Gateway в качестве шлюза, Spring Cloud Security + JWT для аутентификации, spring-boot-admin для мониторинга сервисов, Sentinel для контроля трафика и Nacos для регистрации и конфигурации. RPC реализуется через dubbo, а mybatis-plus обеспечивает удобство работы с базой данных.

Основные модули включают в себя:

  • Логин и регистрацию: учётные записи, верификация по номеру телефона, регистрация арендаторов.
  • Управление пользователями: добавление пользователей, назначение ролей, блокировка и т. д.
  • Управление ролями: создание ролей, просмотр и управление меню и т. п.
  • Меню: древовидное меню, настройка прав доступа к меню и кнопкам.
  • Арендаторы: список арендаторов, блокировка.
  • Логирование: запись и поиск операций.

Структура проекта включает в себя следующие папки:

  • doc — документация;
  • xtoon-common — общие модули;
  • xtoon-ops — операционные сервисы;
  • xtoon-service — бизнес-сервисы.

Для запуска проекта необходимо выполнить следующие шаги:

  1. Извлечь код переднего и заднего плана проекта.
  2. Установить необходимые инструменты: JDK 1.8+, MySQL 5.7+, Redis, Node.js и другие.
  3. Создать две базы данных в MySQL и импортировать SQL-файлы из папки doc.
  4. Изменить конфигурацию среды: MySQL, Redis.
  5. Запустить передний и задний проекты и получить доступ к адресам.

Порядок запуска сервисов на локальном компьютере:

  • xtoon-register-server (регистрация и конфигурация);
  • xtoon-sys-server (управление системой);
  • xtoon-auth-server (аутентификация);
  • xtoon-gateway-server (шлюз);
  • xtoon-monitor-server (мониторинг);
  • xtoon-sentinel-server (контроль трафика);
  • xtoon-could-element (передний проект).

Также поддерживается развёртывание с использованием Jenkins pipeline, Docker, Harbor и Kubernetes. Проект предоставляет открытые конфигурационные файлы для этого процесса. Архитектура программного обеспечения

  • Пользовательский интерфейс (или слой представления)
    Отвечает за отображение информации для пользователя и интерпретацию пользовательских команд. Под пользователем здесь может подразумеваться как человек, так и другая компьютерная система.

  • Прикладной уровень
    Определяет задачи, которые должно выполнять программное обеспечение, и управляет объектами предметной области для решения проблем. Этот уровень выполняет важную работу для бизнеса и является необходимым каналом взаимодействия с прикладными уровнями других систем.

Прикладной уровень должен быть максимально простым, не содержать бизнес-правил или знаний, а только координировать задачи объектов предметной области на следующем уровне, распределять работу и обеспечивать их взаимодействие. Он не отражает состояние бизнес-ситуаций, но может иметь другое состояние, которое показывает прогресс выполнения задачи пользователю или программе.

  • Уровень предметной области (или модели)
    Отвечает за выражение бизнес-концепций, состояния бизнес-информации и бизнес-правил. Хотя технические детали сохранения состояния бизнеса реализуются базовым уровнем инфраструктуры, состояние, отражающее бизнес-ситуации, контролируется и используется этим уровнем. Уровень предметной области является ядром бизнес-приложения.

  • Базовый уровень инфраструктуры
    Предоставляет общие технические возможности для других уровней: передаёт сообщения прикладному уровню, предоставляет механизмы сохранения данных уровню предметной области, рисует экранные компоненты для уровня пользовательского интерфейса и т. д. Базовый уровень также может поддерживать взаимодействие между четырьмя уровнями через архитектурный фреймворк.

Связанные документы

Сопровождающие

Заявление об авторских правах

Лицензия Apache-2.0

Это программное обеспечение распространяется и используется на основе лицензии Apache-2.0. Дополнительную информацию см. в лицензионном соглашении.

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

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

Введение

Описание недоступно Развернуть Свернуть
JavaScript и 5 других языков
Apache-2.0
Отмена

Обновления

Пока нет обновлений

Участники

все

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

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