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

OSCHINA-MIRROR/reger-spring-boot-starter-dubbo

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

spring-boot-starter-dubbo

Spring Boot Starter Dubbo — мост между Spring Boot и Dubbo, реализованный в соответствии с нормами Spring Boot, что делает использование Dubbo простым и быстрым, а также легким для новичков. Новичок в Dubbo сможет использовать его правильно всего за несколько минут.

Используя этот проект, вы обязательно заметите, как просто публиковать сервисы Dubbo.### Основные характеристики проекта

1. Поддерживает все конфигурационные параметры Dubbo в своем первоначальном виде, использует способы конфигурации Spring Boot.

2. Конфигурационные параметры описаны четко, позволяют вам при настройке параметров конфигурации, читать официальную документацию Dubbo на китайском языке (необходимо установить плагин Spring IDE) (Официальная документация Dubbo на китайском языке доступна здесь), (Запись обновлений Dubbo)

3. Предоставляет аннотацию @Inject для замены @Reference при внедрении зависимостей, что позволяет сделать процесс внедрения зависимостей проще при использовании Spring + Dubbo (если данная аннотация не может получить объект из контекста Spring, она будет использовать метод внедрения зависимостей эквивалентный @Reference)

4. Предоставляет аннотацию @Export для замены @Service при экспорте сервиса, использование данной аннотации решает большую часть проблем, связанных с экспортом сервисов через аннотации Dubbo, при этом нет необходимости указывать пакет для сканирования## Группа QQ для общения: 141930386, приветствуем вас в группе для обратной связи или предложений.

Этот проект обновляется одновременно на Open Source China и GitHub, приветствуем ваши отзывы и предложения.

Быстрый старт

Быстрый старт нажмите здесь### Запись обновлений

1.1.3
Дата выпуска: 20 июня 2019 года
Обновление содержимого:
  1. Обновлено до версии зависимости Spring Boot 2.1.5
  2. Обновлено до версии зависимости Dubbo 2.6.6
  3. По умолчанию центр регистрации изменён с Zookeeper на Nacos
  4. По умолчанию зависимость Netty изменена с Netty3 на Netty4
1.1.2
Дата выпуска: 12 сентября 2018 года
Обновление содержимого:
  1. Добавлена аннотация @Export, которая позволяет экспортировать конфигурацию без необходимости указания пакета для сканирования
  2. Улучшено некоторое количество кода
  3. Обновлены некоторые зависимости
1.1.1
Дата выпуска: 10 апреля 2018 года
Обновление содержимого:
  1. Обновлено до версии зависимости Spring Boot 2.0.1
  2. Переработана логика парсинга конфигураций
1.1.0
Дата выпуска: 13 марта 2018 года
Обновление содержимого:
  1. Обновлено до версии зависимости Spring Boot 2.0.0
  2. Добавлены параметры конфигурации QoS в 'spring.dubbo.application'
1.0.11
Дата выпуска: 4 марта 2018 года
Обновление содержимого:
  1. Обновлено до версии зависимости Dubbo 2.5.9
  1. Обновление зависимости spring-boot до версии 1.5.10
    Версия: 1.0.10
    Дата выпуска: 30 декабря 2017 года
    Изменения:
    1. Обновление зависимости dubbo до версии 2.5.8
    2. Обновление зависимости spring-boot до версии 1.5.9
    3. Внесение необходимых корректив согласно рекомендациям
      Версия: 1.0.9
      Дата выпуска: 21 ноября 2017 года
      Изменения:
      1.Добавлен базовый класс фильтра, реализующий интерфейс фильтров
    4. Обработка общих бизнес-исключений в Dubbo
    5. Устранение ошибочного вывода логов при выпуске версии 1.0.8
      Версия: 1.0.8
      Дата выпуска: 13 ноября 2017 года
      Изменения:
    6. Обновление зависимости Dubbo до версии 2.5.7
    7. Переопределение конфигураций классов в соответствии с правилами Dubbo 2.5.7
    8. Добавление конфигурационных параметров для нескольких центров регистрации
      Версия: 1.0.7
      Дата выпуска: 22 октября 2017 года
      Изменения:
    9. Устранение проблем, возникших в реальной среде JDK 1.6 (в отличие от указанной среды JDK в maven-compiler-plugin)
      Версия: 1.0.6
      Дата выпуска: 19 октября 2017 года
      Изменения:
    10. Обновление версии Spring Boot до 1.5.8
    11. Уменьшение зависимости JDK до 1.6
      Версия: 1.0.5
      Дата выпуска: 14 октября 2017 года
      Изменения:
    12. Обновление зависимости Dubbo до версии 2.5.6
    13. Оптимизация части кода
      Версия: 1.0.4
      Дата выпуска: 30 сентября 2017 года
      Изменения:
    14. Устранение проблемы, связанной с использованием аннотации @Service для публикации сервиса через Dubbo без указания interfaceClass, когда сущностной класс был динамически проксируем AOP
      Версия: 1.0.3
      Дата выпуска: 23 сентября 2017 года
      Изменения:
    15. Аннотация @Inject теперь имеет параметр name.Этот параметр действует только при внедрении bean из контекста Spring; если в этом контексте имеется несколько экземпляров данного класса, можно использовать имя для указания конкретного экземпляра для внедрения.

2. Изменение способа зависимости проверочной библиотеки
Версия: 1. 0. 2
Дата выпуска: 16 сентября 2017 года
Изменения:
1. Обновление версии spring-boot до 1. 5. 7
2. Обновление версии dubbo до 2. 5. 5

Версия: 1. 0. 1
Дата выпуска: 9 сентября 2017 года
Изменения:
1. Обновление версии spring-boot до 1. 5. 6
2. Обновление версии dubbo до 2. 5. 4
3. Устранение некоторых ошибок
4. Оптимизация части кода
5. Создание файла README.md для описания проекта
6. Переструктурирование проекта

Версия: 1. 0. 0
Дата выпуска: Не была выпущена за пределы команды, вероятно завершена в августе 2017 года
Изменения:
1. Реализация всех конфигурационных возможностей```markdown

Простой пример

  1. Для примера проекта рекомендуется использовать ZooKeeper как центр регистрации, так как он используется в продакционной среде. Если у вас нет доступного ZooKeeper сервера, вы можете скачать его здесь, после чего распаковать архив, зайти в директорию conf ZooKeeper, скопировать файл zoo_sample.cfg в zoo.cfg, затем войти в директорию bin ZooKeeper, дважды кликнуть на zkServer.bat в Windows системах.
В Linux выполните команду `zkServer.sh start`.
  1. Загрузите пример сервис-провайдера example-provider и выполните команду:
java -jar example-provider-1.0.7.jar --spring.dubbo.registry.address=127.0.0.1 --spring.dubbo.registry.port=2181
  1. Загрузите пример сервис-консьюмера example-consumer и выполните команду:
java -jar example-consumer-1.0.7.jar --spring.dubbo.registry.address=127.0.0.1 --spring.dubbo.registry.port=2181
  1. В консоли будут выводиться логи успешного вызова сервис-консьюмера и сервис-провайдера, что означает запуск простого примера и готовность вашей среды Dubbo.

  2. Клонируйте пример кода и начните путешествие с Dubbo. (Пример проекта здесь)

git clone https://gitee.com/lei0719/spring-boot-starter-dubbo-example.git
Использует бэкенд через JAR-пакеты для публикации RPC-библиотеки, а затем взаимодействует с фронтендом App H5 WeChat с помощью RESTful API. Возможно, вам будет полезна эта плагин RESTful документация [spring-boot-starter-swagger](https://gitee.com/reger/spring-boot-starter-swagger).### Расширение

#### 1. Обработка общих бизнес-исключений
Dubbo при обработке бизнес-исключений преобразует все исключения, которые не являются частью описания метода в виде строки, создает новый объект исключения и возвращает его. Это требует от вас указывать все бизнес-исключения в каждом методе интерфейса.

```java
com.reger.dubbo.rpc.filter.Utils.register(ваш_класс_исключения.class);

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

2. Фильтры Dubbo

По умолчанию фильтры Dubbo требуют специальной конфигурации согласно соглашению, что делает использование сложным. Поэтому здесь предлагается определить базовый класс фильтров и расширенные интерфейсы фильтров. Вам достаточно реализовать интерфейс ProviderFilter или ConsumerFilter для создания своего бизнес-логики. Если указано несколько фильтров одного типа, порядок их выполнения будет определяться именами bean.```java @Bean public ConsumerFilter consumerFilter1() {


## Доступные конфигурационные параметры  
### 1. Конфигурация приложения (обязательна)

```yaml
spring:
  dubbo: 
    application:
      name: demo-provider     # Обязательно Управление службами Название текущего приложения, используемое для вычисления зависимости между приложениями в центре регистрации. Обратите внимание: названия приложений потребителя и поставщика должны различаться, хотя этот параметр не является условием совпадения. Называйте свое приложение тем, что вам удобно. Например, если приложение kylin вызывает сервис приложения morgan, то приложение kylin должно быть настроено как kylin, а приложение morgan — как morgan. Даже если kylin также предоставляет услуги другим приложениям, его название всегда будет kylin. Таким образом, центр регистрации покажет, что kylin зависит от morgan версии 1.0.16 и выше
      owner: laolei           # Необязательно Управление службами Ответственный за приложение, используется для управления службами. Заполните префикс электронной почты ответственного лица компании, версия 2.0.5 и выше
      architecture:           # Необязательно Управление службами Архитектура, используемая для соответствия уровню службы, например intl, china. Различные архитектуры используют различные уровни служб, версия 2.0.7 и выше
``````markdown
#### 2. Пакеты для сканирования сервисов (@service экспорта сервиса требует обязательной конфигурации)
```yaml
spring:
  dubbo: 
    base-package:             # Базовый пакет с сервисами предоставляющих и потребляющих компонентов, несколько пакетов разделены запятой

3. Конфигурационные параметры для центра регистрации (обязательная конфигурация)

spring:
  dubbo:
    registry:                # Настройка центра регистрации приложения
      address:               # Адрес сервера центра регистрации, может быть URL или IP адрес, разделённые запятой
      protocol: dubbo        # Протокол связи с центром регистрации, возможные значения: dubbo, rest, версия 2. 0. 0 и выше
      timeout: 3000          # Время ожидания соединения с сервером центра регистрации, задаётся в миллисекундах, версия 2. 0. 0 и выше
      retryTimes: 3          # Количество попыток повторного подключения при ошибке, версия 2. 0. 0 и выше
spring:
  dubbo: 
    compiler: javassist      # Необязательно Оптимизация производительности Компилятор байт-кода Java, используемый для генерации динамических классов, возможные значения: jdk или javassist, версия 2. 1. 0 и выше
    environment:             # Необязательно Управление службами Окружение приложения, например develop/test/product, различные окружения используют различные значения по умолчанию и ограничивают функции только для разработки и тестирования, версия 2. 0. 0 и выше
    logger: slf4j            # Необязательно Оптимизация производительности Метод вывода логов, возможные значения: slf4j, jcl, log4j, jdk, версия 2. 2. 0 и выше
    organization:            # Необязательно Управление службами Название организации (BU или отдела), используемое для разделения источников услуг в центре регистрации, рекомендуется не использовать autoconfig, а указывать это значение напрямую в конфигурации, например china, intl, itu, crm, asc, dw, aliexpress и т. д., версия 2. 0. 0 и выше
```      protocol: zookeeper   # Обязательно. Сервис discovery. Поддерживаемый протокол центра регистрации включает dubbo, multicast, zookeeper, redis. По умолчанию zookeeper
       address: 127.0.0.1    # Обязательно. Сервис discovery. Адрес сервера центра регистрации. Если адрес не имеет порта, используется значение по умолчанию 9090. Для нескольких адресов одного кластера используйте запятую для разделения, например ip:port,ip:port. Для разных кластеров центра регистрации используйте несколько тегов spring.dubbo.registry. Версия 1.0.16 и выше
       port: 2181            # Опционально. Сервис discovery. Указанный порт по умолчанию для центра регистрации. Если адрес не имеет порта, используется этот порт как значение по умолчанию. Версия 2.0.0 и выше
       client: zkclient      # Опционально. Сервис discovery. Поддерживаемый клиент для центра регистрации. Zookeeper поддерживает клиенты curator и zkclient. Если не указано, используется zkclient по умолчанию
       session: 60000        # Опционально. Производительская настройка. Время истечения сессии центра регистрации (в миллисекундах). Для обнаружения грязных данных после непреднамеренного отключения предоставляющего сервиса, например, время сердцебиения для реализации проверки сердцебиения. Это время является интервалом сердцебиения. Различные реализации центра регистрации могут отличаться. Версия 2.1.0 и выше```yaml
register: true        # Optional. Service management. Whether to register services in this registration center. If set to false, only subscription will be performed, but not registration. Version 2.0.5 and above
check: false          # Optional. Service management. Dynamic service registration. If set to false, the service will be disabled after registration and requires manual reactivation, as well as stopping the service provider will not lead to automatic removal of registration, requires manual deactivation. Version 2.0.5 and above
dynamic: true         # Optional. Service management. Dynamic service registration. If set to false, the service will be disabled after registration and requires manual reactivation, as well as stopping the service provider will not lead to automatic removal of registration, requires manual deactivation. Version 2.0.5 and above
file: regcache
log    # Optional. Service management. Uses a file cache for storing addresses of registration centers and lists of provided services. On application restart, data will be restored from this file. Note: Two registration centers should not use the same file for storing data. Version 2.0.0 and above
```username:             # Опционально. Управление сервисами. Логин для доступа к центру регистрации. Если центр регистрации не требует аутентификации, поле можно пропустить. Версия 2.0.0 и выше

password:             # Опционально. Управление сервисами. Пароль для доступа к центру регистрации. Если центр регистрации не требует аутентификации, поле можно пропустить. Версия 2.0.0 и выше

subscribe:            # Опционально. Управление сервисами. Указывает, следует ли подписаться на сервисы в данном центре регистрации. Если значение равно false, то будет выполнена регистрация, но не подписка. Версия 2.0.5 и выше

timeout:              # Опционально. Настройка производительности. Время ожидания ответа от центра регистрации (в миллисекундах). Версия 2.0.0 и выше

wait: 0               # Опционально. Настройка производительности. Время ожидания завершения уведомлений при остановке (в миллисекундах). Версия 2.0.0 и выше

transport: netty      # Опционально. Настройка производительности. Метод передачи данных через сеть. Возможные значения: mina, netty. Версия 2.0.0 и выше

id:                   # Опционально. Соответствие конфигураций. ID бины центра регистрации, который может быть использован в <dubbo:service registry=""> или <dubbo:reference registry="">. Версия 1.0.16 и выше

registries:           # Конфигурационный параметр для нескольких центров регистрации (обратите внимание, если требуется конфигурировать несколько центров регистрации, каждый центр должен иметь уникальный id и имя)- id: test2
  name: тест2
  protocol: zookeeper   # Обязательно. Открытие сервисов. Поддерживаемый протокол центра регистрации. Допустимые значения: dubbo, multicast, zookeeper, redis. По умолчанию используется zookeeper
  address: 127.0.0.1    # Обязательно. Открытие сервисов. Адрес сервера центра регистрации. Если адрес не содержит порта, он считается равным 9090. Для нескольких адресов в одном кластере используйте запятую для разделения адресов. Например: ip:port,ip:port. Для разных кластеров используйте несколько тегов spring.dubbo.registry. Версия 1.0.16 и выше

port: 2182            # Опционально. Открытие сервисов. Указание порта по умолчанию для центра регистрации. Если адрес не содержит порта, используется этот порт. Версия 2.0.0 и выше

client: zkclient      # Опционально. Открытие сервисов. Клиентская реализация для подключения к центру регистрации. Поддерживаемые клиенты для zookeeper: curator и zkclient. Если не указано, используется zkclient по умолчанию```yaml
spring:
  dubbo:
    protocol:               # Протокол по умолчанию для приложений
      name: dubbo           # Обязательно. Настройка производительности. Название протокола. Версия 2.0.5 и выше
serialization: hessian2 # Опционально. Улучшение производительности. Метод сериализации протокола, используемый при наличии нескольких методов сериализации в протоколе, например: dubbo — dubbo, hessian2, java, compactedjava; http — json и т. д. Версия 2.0.5 и выше
accepts: 0              # Опционально. Улучшение производительности. Максимальное количество подключений, которое может принять сервис-провайдер. Версия 2.0.5 и выше
accesslog: false        # Опционально. Управление услугами. При значении true запись логов доступа в logger. Также можно указать путь к файлу логов доступа для записи логов непосредственно в этот файл. Версия 2.0.5 и выше
buffer: 8192            # Опционально. Улучшение производительности. Размер буфера сети для чтения/записи. Версия 2.0.5 и выше
charset: UTF-8          # Опционально. Улучшение производительности. Кодировка сериализации. Версия 2.0.5 и выше
client: netty           # Опционально. Улучшение производительности. Тип реализации клиента протокола, например: dubbo — mina, netty и т. д. Версия 2.0.5 и выше
codec: dubbo            # Опционально. Улучшение производительности. Метод кодирования протокола. Версия 2.0.5 и выше
contextpath:            # Опционально. Управление услугами. Версия 2.0.6 и выше
dispatcher: all         # Опционально.
```Улучшение производительности.  
Метод маршрутизации сообщений протокола используется для указания модели потока, например: dubbo — all, direct, message, execution, connection и т. д.  
Версия 2. 1. 0 и выше  

heartbeat: 0            # Опционально.  
Улучшение производительности.  
Интервал сердцебиения.  
Для долгоживущих соединений, когда физический уровень отключен, например, выдернут сетевой кабель, FIN-сообщение TCP не успело отправиться, и другая сторона не получила событие отключения.  
В этом случае требуется сердцебиение для проверки состояния соединения.  
Версия 2. 0. 10 и выше  

host:                   # Опционально.  
Открытие службы.  
Имя хоста сервиса, используется при выборе или назначении VIP и домена с несколькими сетевыми адаптерами.  
Если значение не указано, автоматически определяется IP текущего компьютера.  
Недопустимо указывать это значение, рекомендуется использовать автоматическое получение IP.  
Версия 2. 0. 5 и выше  

id: dubbo               # Опционально.  
Соответствие конфигураций.  
ID bean протокола, который можно использовать в <dubbo:service protocol="">.  
Если ID не указан, он совпадает с атрибутом name.  
Если есть повторяющиеся значения, они будут последовательно пронумерованы после имени.  
Версия 2. 0. 5 и выше  

iothreads:              # Опционально.  
Улучшение производительности.  
Размер пула потоков IO (фиксированное значение).  
Версия 2. 0. 5 и выше  

path:                   # Опционально.  
Открытие службы.Предикатный контекстный путь предоставителя услуг. Версия 2.0.5 и выше
payload: 88388608       # Опционально. Улучшение производительности. Ограничение размера данных запроса и ответа, единицы измерения: байты. Версия 2.0.5 и выше
port:                   # Опционально. Открытие службы. Если значение не указано или равно 0, порт будет автоматически выбран в диапазоне от 53600 до 53688. Версия 2.0.5 и выше
```
```markdown
#### 5. Умолчательные параметры конфигурации предоставителя (необязательные параметры)
```yaml
spring:
  dubbo: 
    provider:                 # Общие параметры для предоставителей
      retries: -1             # Опционально, оптимизация производительности, количество попыток повторной отправки вызова удаленного сервиса, не включает первую попытку. Для отключения повторных попыток установите значение равным 0. Версия 2.0.5 и выше
      accesslog: false        # Опционально, управление сервисами, если установлено значение true, лог доступа будет записываться в logger. Также можно указать путь к файлу лога доступа, чтобы выводить его в конкретный файл. Версия 2.0.5 и выше
      delay: 0                # Опционально, оптимизация производительности, задержка регистрации сервиса (в миллисекундах). При значении -1 сервис будет зарегистрирован после завершения инициализации контейнера Spring. Версия 2.0.5 и выше
      deprecated: false       # Опционально, управление сервисами, указывает, является ли сервис устаревшим.Если установлено значение `true`, при обращении потребителя к сервису будет выведено предупреждение о том, что сервис устарел. Версия 2.0.5 и выше

```markdown
5及以上版本
        dynamic: true           # Опционально, служба управления, указывает, регистрировать ли службу динамически. Если значение равно `false`, служба будет отключена после регистрации и должна быть вручную активирована. При остановке службы поставщика она не будет автоматически удалена; её следует вручную деактивировать. Версия 2.0.5 и выше
        executes: 0             # Опционально, производительность, максимальное количество одновременно выполняемых методов для каждого сервиса. Версия 2.0.5 и выше
        group:                  # Опционально, служба управления, группа служб. Когда у одного интерфейса есть несколько реализаций, можно использовать группы для их разделения. Версия 2.0.5 и выше
        id: dubbo               # Опционально, конфигурация, ID протокола BeanId, который может быть использован в `<dubbo:service provider="">`. Версия 1.0.16 и выше
        layer:                  # Опционально, служба управления, уровень расположения поставщика услуг. Например: biz, dao, intl:web, china:acton. Версия 2.0.7 и выше
        listener:               # Опционально, производительность, имя слушателя экспортированных служб поставщика, несколько имён через запятую. Версия 2.0.5 и выше
        mock: false             # Опционально, служба управления, установите значение `true` для использования по умолчанию имени класса Mock, то есть: имя интерфейса + Mock суффикс. Версия 2.0.5 и выше
        owner:                  # Опционально, служба управления, владелец службы, используется для управления службой. Укажите префикс электронной почты владельца компании. Версия 2.0.5 и выше
        path:                   # Опционально, служба управления, путь контекста поставщика, является префиксом пути службы. Версия 2.0.0 и выше
        protocol: dubbo         # Опционально, производительность, имя протокола. Версия 1.0.16 и выше
        proxy: javassist        # Опционально, производительность, способ создания динамического прокси, варианты: jdk/javassist. Версия 2.0.5 и выше
        registry:               # Опционально, конфигурация, регистрация в указанном центре регистрации, используется при работе с несколькими центрами регистрации. Значение — ID атрибута spring.dubbo.registry, несколько ID через запятую. Если нет необходимости регистрировать службу ни в одном центре регистрации, установите значение N/A. Версия 2.0.5 и выше
```       stub: false             # Опционально. Сервисное управление. Установлено в true, чтобы использовать по умолчанию имя прокси-класса, то есть имя интерфейса + суффикс Local. 2.0.5 и более поздние версии
        token: false            # Опционально. Сервисное управление. Токен для проверки, если null — значит не включен, если true — значит случайно сгенерирован динамический токен. 2.0.5 и более поздние версии
        version: 0.0.0          # Опционально. Обнаружение сервиса. Версия сервиса, рекомендуется использовать двухзначную версию, например: 1.0, обычно обновляется при несовместимости интерфейса. 2.0.5 и более поздние версии
        weight: 0               # Опционально. Оптимизация производительности. Вес сервиса. 2.0.5 и более поздние версии
```выше версии 5
        acceptor: 0             # Необязательно. Оптимизация производительности. Максимальное количество подключений, которое может принять провайдер сервиса. 2.0.5 и более поздние версии
        active: 0               # Необязательно. Оптимизация производительности. Максимальное количество одновременных вызовов метода для каждого потребителя сервиса. 2.0.5 и более поздние версии
        async: false            # Необязательно. Оптимизация производительности. Значение по умолчанию для асинхронного выполнения, ненадёжное асинхронное выполнение, игнорирует возвращаемое значение, но не блокирует поток выполнения. 2.0.5 и более поздние версии
        buffer: 8192            # Необязательно. Оптимизация производительности. Размер буфера для чтения/записи сетевых данных. 2.0.5 и более поздние версии
        charset: UTF-8          # Необязательно. Оптимизация производительности. Кодировка сериализации. 2.0.5 и более поздние версии
        client: netty           # Необязательно. Оптимизация производительности. Тип реализации клиента протокола, например: mina/netty для протокола Dubbo. 2.0.0 и более поздние версии
       cluster: failover       # необязательно, оптимизация производительности, способ организации кластера, варианты: failover/failfast/failsafe/failback/forking
        codec: dubbo            # необязательно, оптимизация производительности, способ кодирования протокола
        connections: 0         # необязательно, оптимизация производительности, максимальное количество подключений для каждого провайдера услуг, для коротких соединений rmi/http/hessian это ограничение количества соединений, для долгоживущих соединений dubbo это количество установленных соединений
        default: false         # необязательно, конфигурация связей, является ли протокол по умолчанию, используется при работе с несколькими протоколами
        host:                  # необязательно, открытие службы, имя хоста службы, используется при выборе нескольких сетевых карт или указании VIP и домена, если пусто, автоматически определяется IP текущего компьютера, рекомендуется не указывать, чтобы Dubbo автоматически получал IP текущего компьютера
       -iothreads:             # необязательно, оптимизация производительности, пулы потоков I/O, принимают прерывания чтения/записи сети, сериализацию и десериализацию, не обрабатывают бизнес, бизнес-пул потоков см. конфигурацию threads, этот пул потоков связан с CPU, не рекомендуется указывать       loadbalance: random     # необязательно, оптимизация производительности, стратегия балансировки нагрузки, возможные значения: random, roundrobin, leastactive, что означает: случайное распределение, круговое распределение, минимальная активность вызова 2.0.5 выше версий
        payload: 88388608       # необязательно, оптимизация производительности, ограничение размера данных запроса и ответа, единицы измерения: байты 2.0.0 выше версий
        queues: 0               # необязательно, оптимизация производительности, размер очереди пула потоков, когда пул потоков заполнен, размер очереди ожидающих выполнения задач, рекомендуется не указывать, когда пул потоков заполнен, следует немедленно завершиться ошибкой, попробовать другой сервер-провайдер, вместо того чтобы ждать в очереди, если нет специальных требований 2.0.5 выше версий```markdown
 #### 6. Конфигурация по умолчанию для вызывающей стороны (необязательная конфигурация)
 ```yml
spring:
  dubbo: 
    consumer:                   # Общие настройки потребителя
      lazy: true                #
      timeout: 1000             # Необязательная Настройка производительности Установка времени ожидания вызова удаленного сервиса (миллисекунды) версия 1.0.16 и выше
      check: true               # Необязательная Настройка управления сервисами Проверка наличия провайдера при запуске, true - вывод ошибки, false - игнорирование 1.0.16 и выше
``````markdown
#### 7. Настройки параметров мониторингового центра (необязательные параметры)

```yaml
spring:
  dubbo:
    monitor:                # Сервис мониторинга
```

```properties
retries: 2                # Необязательная Настройка производительности. Количество попыток повторного вызова удаленного сервиса, не включает первый вызов. Установите значение 0, если повторные вызовы не требуются. Версия 1.0.16 и выше.
filter:                   # Необязательная Настройка производительности. Название процессора фильтров для удаленного вызова потребителя. Несколько названий разделены запятой. Версия 2.0.5 и выше.
actives: 0                # Необязательная Настройка производительности. Максимальное количество параллельных вызовов для каждого метода сервиса потребителем. Версия 2.0.5 и выше.
async: false              # Необязательная Настройка производительности. По умолчанию асинхронное выполнение, но это не надежная асинхронность. Просто игнорируется возвращаемое значение, не блокирует поток выполнения. Версия 2.0.0 и выше.
cache:                    # Необязательная Настройка управления сервисами. Кэширование результатов вызова с ключом в виде параметров вызова. Варианты: lru, threadlocal, jcache и т. д. Поддерживается версией Dubbo 2.1.0 и выше.
cluster: failover         # Необязательная Настройка производительности. Опция кластеризации. Варианты: failover/failfast/failsafe/failback/forking. Версия 2.0.5 и выше.
``````markdown
#### 8. Определение модулей (необязательные параметры)
```yaml
spring:
  dubbo:
    module:                 # Определение модулей приложения
```

```markdown
#### 9. Список предоставляемых сервисов (так как этот конфигурационный файл обычно не используется, описание пропущено)
```yml
spring:
  dubbo: 
    services:
      - provider: 
        accesslog:
        async:
        cluster: 
        connections: 
        contextpath: 
        delay: 
        deprecated:
        document: 
        dynamic:
        executes: 
        filter: 
        group: 
        interface: 
        layer: 
        listener: 
        loadbalance: 
        mock:
        owner: 
        path: 
        protocol: 
        proxy: 
        ref:
        register:
        registry: 
        retries: 
        stub:
        timeout: 
        token:
        version: 
        weight:  
```

```markdown
#### 10. Список конфигураций вызывающих сторон (так как этот конфигурационный файл обычно не используется, описание пропущено)
```yml
spring:
  dubbo: 
    references:
      - actives: 
        async:
        cache:
        check:
        client: 
        cluster: 
        connections: 
        filter: 
        generic:
        group: 
        id: 
        init:
        interface: 
        layer: 
        listener: 
        loadbalance: 
        mock:
        owner: 
        protocol: 
        proxy:
```

```markdown
### Настройки управления сервисами
```yaml
address: N/A          # Необязательный параметр. Адрес прямого подключения к серверу мониторингового центра. Для использования начиная с версии 1.0.16.
protocol: registry    # Необязательный параметр. Протокол мониторингового центра. Если protocol="registry", то адрес мониторингового центра будет найден через регистратор. Для использования начиная с версии 2.0.9.
```        registry: 
         retries: 
         stub:
         timeout: 
         url: 
         validation:
         version: 
 ``` 
 ```

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

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

Введение

Чтобы новички могли нормально использовать Dubbo, нужно совсем немного времени. А для опытных разработчиков использование Dubbo будет таким же лёгким, как прогулка под весенним бризом. Развернуть Свернуть
Apache-2.0
Отмена

Обновления

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

Участники

все

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

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