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

OSCHINA-MIRROR/silentbalanceyh-vertx-zero

Присоединиться к Gitlife
Откройте для себя и примите участие в публичных проектах с открытым исходным кодом с участием более 10 миллионов разработчиков. Приватные репозитории также полностью бесплатны :)
Присоединиться бесплатно
Клонировать/Скачать
d10068-fragment-yaml-configuration.md 7.5 КБ
Копировать Редактировать Web IDE Исходные данные Просмотреть построчно История
gitlife-traslator Отправлено 30.11.2024 04:28 85b9559

Конфигурация, vertx.yml

До сих пор вы видели различные файлы конфигурации в нулевой системе, этот туториал познакомит вас со структурой конфигурации в нулевой системе. В обычном maven-проекте нулевой системы структура часто выглядит следующим образом:

src/main/java
src/main/resources     # Этот туториал фокусируется на этой папке для конфигурации yaml
src/test/java
src/test/resources
src/main/lombok        # Если lombok включён или используется

Все файлы конфигурации yaml будут помещены в папку src/main/resources, и различные конфигурационные файлы up.god.file управляют различными функциями.

1. Содержание

Основной конфигурационный файл up.god.file — это vertx.yml, этот файл является основным файлом конфигурации нулевой системы. Пример этого файла up.god.file выглядит следующим образом:

zero:
  lime: error, inject, server
  vertx:
    clustered:
      enabled: false
      manager:

    instance:
    - name: vx-zero
      options:
        # Исправление проблемы с ограничением блока 2000.
        maxEventLoopExecuteTime: 6000000000

2. Расширение: lime

lime — это конфигурация расширения, вы можете добавить сюда любой внешний конфигурационный файл yaml up.god.file с помощью lime. Для приведённого выше примера конфигурационным файлом up.god.file должен быть vertx-error.yml, vertx-inject.yml или vertx-server.yml.

Ещё одна вещь заключается в том, что в нашей системе узел lime влияет только на имя файла, он не влияет на содержимое конфигурации. Это означает: _ _

Вы можете поместить информацию о конфигурации mongo в vertx-mysql.yml, потому что нулевая система фокусируется на разборе содержимого, а не имени файла, но мы не хотим, чтобы вы так делали.

Но мы всё же рекомендуем вам использовать осмысленные имена файлов для содержимого.

Стандартные расширения lime нулевой системы следующие:

  • error: определение сообщения об ошибке в нулевой системе;
  • server: конфигурация сервера нулевой системы, по умолчанию включён http-сервер;
  • inject: компоненты внедрения по умолчанию в нулевую систему, вы можете разработать пользовательские Infix и настроить их в нулевой системе. Нулевая система поддерживает подключаемые компоненты, мы представим разработку подключаемых модулей в следующих туториалах.

Все вышеперечисленные узлы lime по умолчанию импортируются нулевой системой, хотя вы и не настроили их в vertx.yml, эти расширения были включены нулевой системой. Если вы предоставите файлы расширений, то будет перезаписана конфигурация по умолчанию.

3. Vert.x Cluster: clustered

Под узлом zero -> vertx мы можем установить конфигурацию кластера vert.x, сегмент выглядит следующим образом:

clustered:
    enabled: false
    manager: 
    options:

Если вы хотите включить режим кластера vert.x, вы можете добавить конфигурацию clustered в vertx.yml:

  • enabled: включить режим кластера vert.x;
  • manager: предоставить имя менеджера кластера vert.x, имя представляет собой полное имя класса java, вы можете обратиться к http://vertx.io/docs/#clustering, чтобы проверить менеджер кластера, который поддерживается vert.x.
  • options: если вы включите кластеризацию, вы можете предоставить параметры менеджеру кластера, который вы будете использовать. Если вы не предоставите эту конфигурацию, менеджер кластера будет использовать значения по умолчанию.

Нулевая система отключает режим кластера по умолчанию.

4. Vert.x Instance: instance

Здесь один нулевой экземпляр может запускать более одного экземпляра vert.x, но мы всё равно рекомендуем вам устанавливать один экземпляр vert.x на каждом нулевом узле.

    instance:
    - name: vx-zero
      options:
        # Исправление проблемы с ограничением блока 2000.
        maxEventLoopExecuteTime: 6000000000

Эта конфигурация проста, name будет использоваться в режиме micro больше, чем в режиме standalone, когда вы используете функцию обнаружения/регистрации служб, весь путь конфигурации в центре регистрации ( zookeeper, etcd или consul ) будет помещён под именем. Мы представим его в следующих туториалах.

Параметры options будут сопоставлены с собственной конфигурацией vert.x, это JsonObject и будет преобразован в класс io.vertx.core.VertxOptions вместо прямой сериализации.

5. Резюме

Этот раздел посвящён основному файлу конфигурации нулевой системы vertx.yml. Этот файл содержит следующую конфигурацию:

  • lime: конфигурация. extension.
  • vertx -> clustered: конфигурация кластера Vert.x.
  • vertx -> instance: (Multi Support) опции vert.x, которые будут преобразованы в io.vertx.core.VertxOptions.

Ещё один момент заключается в том, что вся остальная конфигурация пришла из узла lime, lime означает:

Linear Injection Magical Extension.

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

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

1
https://api.gitlife.ru/oschina-mirror/silentbalanceyh-vertx-zero.git
git@api.gitlife.ru:oschina-mirror/silentbalanceyh-vertx-zero.git
oschina-mirror
silentbalanceyh-vertx-zero
silentbalanceyh-vertx-zero
master