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

OSCHINA-MIRROR/xufengzz-springmix

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

Springmix: микросервисная интеграционная платформа

Введение

Service mesh — облачная нативная интегрированная базовая архитектура, основанная на SpringBoot, springCloud alibaba, k8s, istio и других связанных технологиях.

Цель

  1. Быстро создать распределённый проект, основанный на облачной нативной технологии.
  2. Перевести техническую команду на SpringCloud. В настоящее время SpringCloud использует инвазивное распределение, компоненты часто устаревают, а обновления и обслуживание затруднены.
  3. Решить проблемы с управлением разработкой небольших компаний, где версии технологий не согласованы, управление разработкой хаотично, и существует дублирование кода.
  4. Использовать облачные нативные технологии, такие как управление сервисами и эксплуатация, чтобы сделать SpringBoot более удобным для использования в облаке.

Описание архитектуры программного обеспечения

Предоставляет аутентификацию, авторизацию, распределённые транзакции, мониторинг, feign, grpc, redis, datasource и другие распространённые инструменты.

Используя основной набор инструментов, можно быстро создать корпоративный облачный проект.

Через maven-зависимости можно легко внедрить различные распространённые технологии.

Структура каталога

springmix-parent  — dmp базовая структура

springmix-parent
├── springmix-base — некоторые классы инструментов jackjson автоматическая генерация документов, интернационализация. Рассмотрите возможность использования hutool, некоторые компании не разрешают его использование, вы можете написать свой собственный
├── springmix-bom — глобальное управление зависимостями
├── springmix-core — конфигурация расширения springBoot (рекомендуется для каждого нового проекта)
├── springmix-demo — пример использования инструмента
├── springmix-feign-istio — имитация feign без балансировки нагрузки (внешняя реализация istio lb)
├── springmix-grpc-istio — пользовательская реализация grpc без балансировки нагрузки (внешняя реализация istio lb)
└── 待更新

Руководство по установке

Шаги:

  1. mvn clean install или mvn clean install deploy (упаковать в частный сервер, изменить конфигурацию частного сервера).

  2. Для существующего проекта добавьте pom или создайте новый проект SpringBoot maven и добавьте зависимость к этому проекту:

     <dependencyManagement>
        <dependencies>
            <dependency>
                <groupId>cn.springmix</groupId>
                <artifactId>springmix-bom</artifactId>
                <version>1.0-SNAPSHOT</version>
                <type>pom</type>
                <scope>import</scope>
            </dependency>
        </dependencies>
    </dependencyManagement>

Пример добавления основного пакета:
cn.springmix springmix-core

Основной пакет в основном инициализирует некоторые соглашения о конфигурации, глобальные исключения и интернационализацию. Другие инструменты добавляются по мере необходимости.

Как показано на рисунке:

![img.png](doc/1.1.png)

3. Запустите приложение springBoot. Добавьте необходимые rpc, источники данных, кеширование и используйте мой открытый исходный код для аутентификации на сервере.
![img.png](doc/2.png)
Поздравляем! Базовая структура управления различными версиями spring boot завершена.
![img.png](doc/3.png)
В сочетании с моим открытым исходным кодом аутентификация на сервере может быстро реализовать систему управления доступом на основе ролей (RBAC) корпоративного уровня.

#### Участие и вклад

1. Fork этот репозиторий.
2. Создайте ветку Feat_xxx.
3. Отправьте код.
4. Создайте Pull Request.

#### FAQ

Вопрос: Почему нет центра регистрации?
Ответ: Этот проект рекомендует использовать облачные нативные технологии. Центр регистрации может быть подключен к etcd k8s или nacos.

Вопрос: Это распределённая служба? Почему не используется springCloud, нет шлюза, управления сервисами и т. д.?
Ответ: Да;
Используется spring Cloud, что затрудняет обновление и обслуживание, а также инвазивную настройку фреймворка, которую трудно унифицировать для всей команды. Например, у технической команды есть разные java-команды, .net-команды и go-команды.
Этот проект представляет собой практическую реализацию корпоративного облачного решения, и различные команды могут взаимодействовать через grpc. Управление сервисами осуществляется с помощью istio. Золотой шёлковый воробей развёртывается динамически, ресурсы планируются, devOps, журналы собираются централизованно, а шлюз использует ingress.
Рекомендуется развернуть с использованием k8s.

Вопрос: Для каких технических команд подходит этот проект?
Ответ: Этот проект подходит для руководителей небольших корпоративных команд, которые всё ещё ищут корпоративные фреймворки. Код полностью открыт.

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

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

Введение

Спринг бут — набор инструментов: микросервисная архитектура Spring Cloud Alibaba для реализации облачных сервисов. Быстрое создание распределённого проекта на основе облачной инфраструктуры. Решение проблем, связанных с разнородностью технологических стеков команд малого и среднего бизнеса, хаосом в разработке и управлении, дублированием кода ... Развернуть Свернуть
Apache-2.0
Отмена

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

все

Участники

все

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

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