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

OSCHINA-MIRROR/yu120-mconf

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

Конфигурационный центр (Mconf)

Введение в открытый продукт (микросервисная инфраструктура)

QQ-чат для обмена: 191958521

Внимание: заинтересованные разработчики могут связаться со мной, чтобы присоединиться к разработке!

1 Обзор

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

Чтобы решить эти проблемы, был разработан конфигурационный центр на основе Zookeeper (конфигурационный центр микросервиса: mconf). Однако введение нового конфигурационного центра также привело к увеличению операционных затрат и рискам сбоев. Поэтому рекомендуется не полагаться исключительно на mconf, так как система может функционировать и без него. Хотя наличие mconf может облегчить многие задачи, его использование требует осторожности.

Основные функции поддержки:

  • Поддержка упрощённой версии mconf: управление упрощённым форматом «app-conf».
  • Поддержка управления конфигурацией для нескольких центров обработки данных.
  • Поддержка принципа конфигурации для нескольких сред.
  • Управление группами конфигурационных файлов.
  • Многоверсионное управление конфигурационными файлами.
  • Структура списка для отдельных конфигурационных файлов с несколькими элементами данных.
  • Высокая надёжность хранения конфигурационных файлов благодаря использованию Zookeeper и Redis.

2 Конфигурационные интерфейсы

2.1 Основные интерфейсы SDK

Этот SDK в основном используется для предоставления инструментария конфигурационного центра для различных приложений.

  • Интерфейс 1: подписка на все конфигурации текущего приложения или на определённые конфигурации в текущем приложении.

void subscribe(NotifyListener listener, String application, String... configs) throws MicroConfigException;

  • Интерфейс 2: отмена подписки.

void unsubscribe(String application, String... configs) throws MicroConfigException;

  • Интерфейс 3: получение всех конфигураций текущего приложения или определённых конфигураций в текущем приложении.

List pull(String application, String... configs) throws MicroConfigException;

2.2 Интерфейсы управления данными конфигурации OPS

Эта группа интерфейсов в основном предназначена для управления конфигурационными данными на стороне операций.

  • Интерфейс 1: публикация одной конфигурации.

boolean publish(MetaMultiDataConfig metaMultiDataConfig) throws MicroConfigException;

  • Интерфейс 2: удаление одной конфигурации.

boolean delete(MetaConfig metaConfig) throws MicroConfigException;

  • Интерфейс 3: поиск списка конфигураций (поддерживает поиск по среде, приложению, конфигурации, версии и ключевым словам).

List search(MetaConfig metaConfig, String keyword) throws MicroConfigException;

  • Интерфейс 4: подписка на все конфигурации.

void subscribe(NotifyListener listener) throws MicroConfigException;

  • Интерфейс 5: отмена подписки.

void unsubscribe() throws MicroConfigException;

  • Интерфейс 6: очистка всех данных конфигурационного центра.

void clear() throws MicroConfigException;

2.3 Интерфейсы обслуживания среды OPS

Эта группа интерфейсов предназначена для обслуживания списка сред на стороне операций.

  • Интерфейс 1: создание новой среды.

boolean publish(String environment, String name) throws MicroConfigException;

  • Интерфейс 2: удаление среды.

boolean delete(String environment) throws MicroConfigException;

  • Интерфейс 3: запрос всех списков сред.

Set environments() throws MicroConfigException;

2.4 Интерфейсы обслуживания отношений конфигурации OPS

Эта группа конфигураций предназначена для обслуживания набора сопоставлений «приложение — конфигурация — версия» на стороне операций.

  • Интерфейс 1: публикация отношения конфигурации.

boolean publish(String application, String name, String[] configs, String[] versions) throws MicroConfigException;

  • Интерфейс 2: удаление отношения конфигурации.

boolean delete(String application, String config, String version) throws MicroConfigException;

  • Интерфейс 3: запрос всех отношений конфигурации.

Set applicationConfigVersions() throws MicroConfigException;

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

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

Введение

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

Обновления

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

Участники

все

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

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