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

OSCHINA-MIRROR/insteresting-JBuss

Присоединиться к Gitlife
Откройте для себя и примите участие в публичных проектах с открытым исходным кодом с участием более 10 миллионов разработчиков. Приватные репозитории также полностью бесплатны :)
Присоединиться бесплатно
В этом репозитории не указан файл с открытой лицензией (LICENSE). При использовании обратитесь к конкретному описанию проекта и его зависимостям в коде.
Клонировать/Скачать
README.md 13 КБ
Копировать Редактировать Web IDE Исходные данные Просмотреть построчно История
gitlife-traslator Отправлено 28.11.2024 09:19 b084161

JBuss

Введение

JBuss — это бесплатная распределённая система управления и администрирования на основе springboot. В разработке использовались последние версии MySQL 8.0, Springboot 2.7.3 и Redis 5.0. Это готовое решение для бэкенда, которое можно использовать в качестве начальной архитектуры проекта или в учебных целях. JBuss постоянно следит за последними тенденциями в технологиях и обновляет информацию как можно быстрее.

Цель JBuss — предоставить интегрированное решение для бэкэнда, подходящее для вторичной разработки. Система уже содержит готовые динамические меню, пользователей, роли, словари и управление правами (на уровне кнопок), что позволяет разработчикам сосредоточиться на бизнес-логике, не заботясь о базовых функциях. Кроме того, JBuss предлагает улучшенное управление периодическими задачами, позволяя легко изменять или останавливать задачи без необходимости перезапуска системы. Достаточно выполнить действия на странице, чтобы настроить расписание задач, например, **/10 * * * * ?*. Также предоставляется централизованное управление распределёнными задачами.

Если вашему проекту требуется больше базовых функций, вы можете разрабатывать более сложные функции, такие как рабочие процессы, на основе JBuss.

Ветви old-dev и master безопасны для использования.

Характеристики

Системное администрирование

  • Динамическое меню: настройка необходимых меню в панели навигации с обновлением страницы.
  • Пользователи: конфигурирование пользователей с соответствующими ролями, включая роль по умолчанию с паролем 123456.
  • Роли: наличие двух ролей для регистрации пользователей и управления их истечением срока действия.
  • Кнопки: идеальное соответствие между меню и кнопками, а также детальное управление правами.
  • Словари: предоставление данных словаря для бизнес-целей, при этом системные словари не включены.
  • Права: структурированное управление правами на основе ролей, меню и кнопок.
  • Все изменения сохраняются без необходимости повторного входа в систему.

Настройка системы

  • Конфигурация системы: управление регистрацией различных модулей пользователей, определение ролей для новых регистраций, управление истечением сроков действия ролей и настройка времени истечения срока действия пользователей.
  • Автоматизация ролей: управление зарегистрированными пользователями, изменение ролей пользователей и настройка сроков истечения действия ролей.

Периодические задачи

  • Локальное планирование: возможность добавления и выполнения задач в бэкенд-сервисе с использованием параметров JSON, выражений cron и статуса. Нет необходимости останавливать и перезапускать сервис для управления периодическими задачами. Предоставляются документы с визуализацией параметров, журналы и уведомления по электронной почте.
  • Распределённое планирование: интеграция с jbuss-rpc-server для централизованного управления распределёнными задачами планирования. Отличается от локального планирования возможностью развёртывания на разных узлах сервисов через службу rpc. Обеспечивается визуализация параметров, ведение журналов и отправка уведомлений по электронной почте.
  • Исполняющие узлы: управление каждым узлом сервиса, предоставляя возможности автоматической регистрации, ручной регистрации и анализа задач на узле. Предлагается конфигурация управления задачами на узлах.

Мониторинг системы

  • Онлайн-пользователи: просмотр активных пользователей в реальном времени с возможностью блокировки неактивных пользователей (кроме себя).
  • Обзор ресурсов: мониторинг состояния памяти, процессора и других ресурсов на каждом сервере без необходимости индивидуального просмотра каждого сервера.
  • Мониторинг сервисов: отслеживание информации о процессоре, памяти, жёстком диске, JVM, swap и системных данных на каждом сервере.

Управление вложениями

  • Загрузка файлов: простая загрузка файлов, включая пакетную загрузку изображений и файлов. Планируется дальнейшее улучшение функциональности.
  • Мои файлы: доступ к личным файлам для каждого пользователя.
  • Все файлы: просмотр файлов всех пользователей для удобства администраторов.

Журналы событий

  • Операционные записи: регистрация всех действий, выполненных каждым пользователем в системе, включая события, пути, методы запросов, время выполнения и время запроса.
  • Записи входа: отдельное хранение информации о входе пользователей, включая устройства, операционные системы, IP-адреса и время входа.

Личные данные

  • Основные данные: предоставление возможностей для изменения личных данных.
  • Мой вход: просмотр истории входов для каждого пользователя в любое время.
  • История действий: восстановление предыдущих операций в случае забытых действий.
  • Изменение пароля: обновление пароля на основе исходного пароля.

Предварительная подготовка

  • JDK 1.8
  • MySQL 8.0+
  • Redis 5.0+

Установка и использование

  1. Получите код:

    git clone https://gitee.com/insteresting/JBuss.git
  2. Разместите интерфейс в каталоге tomcat для запуска:

    cd JBuss
    cp -r 前端/ROOT/* tomcat/ROOT/
    # Обратите внимание на необходимость изменения файла js/custom/app.js для домена и cookieDomain
    domain: префикс адреса бэкэнд-интерфейса
    cookieDomain: домен cookie для интерфейса
    
  3. Инициализируйте последний SQL-скрипт:

    # Импортируйте последний файл SQL из tools, учитывая соответствующую базу данных, порт, пользователя и пароль
  4. Запустите проект:

    1. Внедрите jbuss-rpc-spring-boot-starter:

    2. Настройте rpc в application.yml в SpringBoot:

      fxw-rpc:
        local-registry-port: текущий порт запуска узла
        remote-registry-ip: IP центра регистрации
        remote-registry-port: порт центра регистрации
    3. Активируйте rpc: Добавьте @EnableFxwRpc в класс SpringBoot.

    4. Создайте задачи планирования:

      • Добавьте @TaskComponent в класс.
      • Используйте @Note(desc = "Информация о памяти|Cpu узла", params = "serverNode(String,true,192.168.0.12:9998,узел службы)") для аннотирования метода.
        • desc: описание метода.
        • params: параметры описания, строго следуя формату определения: параметр1(тип параметра, требуется ли заполнение, пример, описание параметра)|параметр2(тип параметра, требуется ли заполнение, пример, описание параметра).
      • Обратитесь к примеру jbuss-rpc-server-app для создания задач планирования.

Недостатки

В настоящее время проект является личной коллекцией, интерфейс использует оригинальный JavaScript/jQuery, и в настоящее время ведётся работа над его преобразованием в Vue3.

Как внести свой вклад

Если у вас есть лучшие идеи, свяжитесь со мной, мой QQ: 970737468.

Pull Request:

  1. Форкните код.
  2. Создайте свою ветку: git checkout -b feat/xxxx.
  3. Зафиксируйте свои изменения: git commit -am 'feat(function): add xxxxx'.
  4. Отправьте свою ветку: git push origin feat/xxxx.
  5. Отправьте pull request.

Git-правила оформления коммитов

  • feat: новые функции.
  • fix: исправление ошибок.
  • docs: документация.
  • style: форматирование и стиль (не влияет на выполнение кода).
  • refactor: рефакторинг (не добавление новой функциональности и не исправление ошибок).
  • perf: оптимизация, например, повышение производительности или улучшение опыта.
  • test: добавление тестов.
  • build: изменения, связанные со сборкой или зависимостями.
  • ci: непрерывная интеграция.
  • chore: изменения в процессе сборки или вспомогательных инструментах.
  • revert: возврат к предыдущей версии.
  • workflow: улучшения рабочего процесса.
  • mod: неопределённые изменения.
  • wip: разработка в процессе.
  • types: типы.

Поддержка браузеров

Рекомендуется использовать Chrome 80+ для локальной разработки. Поддерживаются современные браузеры, IE не поддерживается. Вклад участников

味道日损
Вкусовой день потерян

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

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

1
https://api.gitlife.ru/oschina-mirror/insteresting-JBuss.git
git@api.gitlife.ru:oschina-mirror/insteresting-JBuss.git
oschina-mirror
insteresting-JBuss
insteresting-JBuss
dev-pear