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

OSCHINA-MIRROR/xfcode-source-smarten

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

smarten

Высокопроизводительный распределенный центр конфигураций

  • Центр конфигураций предоставляет управление параметрами конфигурации системы, такими как переключатели бизнес-данных, конфигурационные данные базы данных и т.д. После изменения параметров конфигурации они могут быть в реальном времени отправлены на клиент (бизнес-систему или сервис), что позволяет динамически изменять параметры выполнения системы.
  • Поддерживает несколько бизнес-систем, каждая из которых может настроить несколько окружений, таких как (development, test, production).
  • Все параметры конфигурации инициализируются в окружении development, test и production наследуют конфигурации development, которые также могут быть переопределены. Окружения test и production предоставляют только функцию редактирования.
  • Бизнес-системы кэшируют конфигурационные данные в локальной файловой системе. Если сервер недоступен, можно использовать локальную резервную копию. Клиент может периодически пытаться подключиться к серверу, чтобы обеспечить доступность центра конфигураций.
  • Центр конфигураций резервирует конфигурации в файловой системе. Если база данных не используется, это гарантирует предоставление конфигурационных данных клиенту.

КАК ИСПОЛЬЗОВАТЬ:

  • Запуск сервисаЗапустите SmartenServer.java в проекте smarten-server-web

КАК ИНТЕГРИРОВАТЬ В ПРОЕКТ:

  • Настройка POM
  <dependency>
        <groupId>com.abocode.smarten</groupId>
        <artifactId>smarten-client</artifactId>
        <version>${project.parent.version}</version>
   </dependency>

Метод 1: Spring MVC Controller

    @Slf4j
    @RestController
    @RequestMapping("/tests")
    public class HelloController {
        @Autowired
        private Properties properties;
        @Value("${string}")
        private String val;
        @GetMapping
        public String hello() {
            return properties.getProperty("string");
        }
    }
    

Метод 2

    String host="127.0.0.1";
    int port=5555;
    String projectCode="smarten";
    String moduleCodes="smarten-test"; //Многие значения разделяются запятой
    String profile="development";
    ClientProperties clientProperties = new ClientProperties(host,port,projectCode,moduleCodes,profile);
    clientProperties.addConfigurationListener(new ConfigTestListener());
    for (int i=0;i<100000;i++){
        Thread.sleep(2000);
        System.out.println(clientProperties.getString("string"));
    }

Метод 3: Spring Boot

    @Bean
    public Properties properties() {
         String host="127.0.0.1";
         int port=5555;
         String projectCode="smarten";
         String moduleCodes="smarten-test"; //Многие значения разделяются запятой
         String profile="development";
        return new ClientProperties(host,port,projectCode,moduleCodes,profile).getProperties();
    }
    @Bean
    public PropertySourcesPlaceholderConfigurer propertySourcesPlaceholderConfigurer(){
        PropertySourcesPlaceholderConfigurer bean=new PropertySourcesPlaceholderConfigurer();
        bean.setProperties(properties());
       return bean;
    }    

Получение конфигурации через REST-интерфейс:

Конфигурационные данные:

http://127.0.0.1:7077/swagger-ui.html

Тестовые ссылки:

http://127.0.0.1:7078/swagger-ui.html

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

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

Введение

Высокопроизводительный распределенный центр управления конфигурациями Развернуть Свернуть
Apache-2.0
Отмена

Обновления

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

Участники

все

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

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