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

OSCHINA-MIRROR/servicecomb-ServiceComb-Saga

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

Apache ServiceComb Pack — это решение для обеспечения согласованности данных в микросервисных приложениях.

Особенности

  • Высокая доступность. Координатор не имеет состояния и может иметь несколько экземпляров.
  • Высокая надёжность. Все события транзакций постоянно хранятся в базе данных.
  • Высокая производительность. События транзакций передаются координатору через gRPC, а полезные данные транзакций сериализуются/десериализуются с помощью Kyro.
  • Низкое вмешательство. Всё, что вам нужно сделать, это добавить 2–3 аннотации и соответствующие методы компенсации.
  • Простота развёртывания. Все компоненты могут загружаться через Docker.
  • Поддержка как прямого (повтор), так и обратного (компенсация) восстановления.
  • Возможность расширения других протоколов координации на основе Pack. В настоящее время мы имеем встроенную поддержку Saga и TCC.

Архитектура

ServiceComb Pack состоит из альфы и омеги.

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

Следующая диаграмма показывает отношения между альфой, омегой и сервисами. Архитектура Pack

Таким образом, мы можем реализовать различные протоколы координации, такие как saga и TCC. Подробнее см. в ServiceComb Pack Design.

В настоящее время у нас есть разные языковые реализации Омеги:

Начало работы

  • Для приложений ServiceComb Java Chassis см. Booking Demo для получения подробной информации.
  • Для Spring-приложений см. Booking Demo для получения подробной информации.
  • Для Dubbo-приложений см. Dubbo Demo для получения подробной информации.
  • Для TCC с Spring-приложением см. Tcc Demo для получения подробной информации.
  • Чтобы отладить приложения, см. раздел Spring Demo Debugging для получения подробной информации.

Сборка и запуск тестов из исходного кода

  • Соберите исходный код и запустите тесты.
       $ mvn clean install
  • Создайте исходные образы докеров и запустите приемочные тесты.
       $ mvn clean install -Pdemo
  • Соберите исходный код без запуска тестов. Профиль докера будет активирован, если Maven обнаружит установку докера.
       $ mvn clean install -DskipTests=true -Pdemo
  • Соберите комплект выпуска для распространения без запуска тестов, после чего вы можете найти комплекты выпуска в каталоге distribution/target.
       $ mvn clean install -DskipTests=true -Prelease

Руководство пользователя

Как собрать и использовать, можно узнать в Руководстве пользователя.

Получение последней версии

Получите выпущенную версию:

Получите версию снимка:

  • Мы публикуем версию снимка в репозитории Apache nexus, добавьте её в качестве репозитория в свой файл pom.xml. Ниже представлены репозитории в вашем файле pom.xml.
<repositories>
    <repository>
        <releases />
        <snapshots>
            <enabled>true</enabled>
        </snapshots>
        <id>repo.apache.snapshot</id>
        <url>https://repository.apache.org/content/repositories/snapshots/</url>
    </repository>
</repositories>
<pluginRepositories>
    <pluginRepository>
        <releases />
        <snapshots>
            <enabled>true</enabled>
        </snapshots>
        <id>repo.apache.snapshot</id>
        <url>https://repository.apache.org/content/repositories/snapshots/</url>
    </pluginRepository>
</pluginRepositories>  

FAQ

Contact Us

Contributors

contributors

How to Contribute

Смотрите Pull Request Guide для получения подробной информации.

License

Лицензия Apache 2.0 (https://github.com/apache/servicecomb-pack/blob/master/LICENSE).

Export Notice

Это распространение включает в себя криптографическое программное обеспечение. Страна, в которой вы в настоящее время проживаете, может иметь ограничения на импорт, владение, использование и/или реэкспорт в другую страну программного обеспечения для шифрования. Прежде чем использовать любое программное обеспечение для шифрования, пожалуйста, проверьте законы, правила и политику вашей страны относительно импорта, владения или использования и реэкспорта программного обеспечения для шифрования, чтобы узнать, разрешено ли это. Дополнительную информацию см. на сайте http://www.wassenaar.org/.

Фонд Apache Software Foundation классифицировал это программное обеспечение как номер контроля экспорта товаров (ECCN) 5D002, который включает программное обеспечение информационной безопасности, использующее или выполняющее криптографические функции с асимметричными алгоритмами. Форма и способ распространения Фонда Apache Software Foundation делают его пригодным для экспорта в соответствии с исключением «общедоступный» Раздел 742.15(b) (см. Правила экспортного администрирования BIS, Раздел 742.15(b)) как для объектного кода, так и для исходного кода.

Ниже представлена дополнительная информация о включённом криптографическом программном обеспечении:

  • Omega/Alpha Transport можно настроить для использования https.

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

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

Введение

Описание недоступно Развернуть Свернуть
Apache-2.0
Отмена

Обновления

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

Участники

все

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

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