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

OSCHINA-MIRROR/mirrors-Dubbo-Spring-Boot-Project

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

Проект Apache Dubbo Spring Boot

Этот репозиторий архивирован. Все реализации были перемещены в apache/dubbo.

Статус сборки codecov Лицензия

Apache Dubbo Spring Boot Project делает легким создание Spring Boot приложения с использованием Dubbo как фреймворка удаленного вызова процедур. Кроме того, он также предоставляет:

Apache Dubbo |ˈdʌбоʊ| — это высокопроизводительный, легковесный, основанный на Java фреймворк удаленного вызова процедур. Dubbo предлагает три ключевые функциональности, включая интерфейсный удаленный вызов, отказоустойчивость и балансировку нагрузки, а также автоматическую регистрацию и поиск сервисов.

Краткое описание на китайском

Выпущенная версияВы можете ввести последнюю версию dubbo-spring-boot-starter в ваш проект, добавив следующую зависимость в ваш pom.xml

<properties>
    <spring-boot.version>2.3.0.RELEASE</spring-boot.version>
    <dubbo.version>2.7.8</dubbo.version>
</properties>

<dependencyManagement>
    <dependencies>
        <!-- Spring Boot -->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-dependencies</artifactId>
            <version>${spring-boot.version}</version>
            <type>pom</type>
            <scope>import</scope>
        </dependency>
```        <!-- Apache Dubbo -->
        <dependency>
            <groupId>org.apache.dubbo</groupId>
            <artifactId>dubbo-dependencies-bom</artifactId>
            <version>${dubbo.version}</version>
            <type>pom</type>
            <scope>import</scope>
        </dependency>
      
    </dependencies>
</dependencyManagement>
``````markdown
<dependencies>
    <!-- Dubbo Spring Boot Starter -->
    <dependency>
        <groupId>org.apache.dubbo</groupId>
        <artifactId>dubbo-spring-boot-starter</artifactId>
        <version>2.7.8</version>
    </dependency>    
</dependencies>

Если ваш проект не может разрешить зависимость, попробуйте добавить следующий репозиторий:

<repositories>
    <repository>
        <id>apache.snapshots.https</id>
        <name>Apache Development Snapshot Repository</name>
        <url>https://repository.apache.org/content/repositories/snapshots</url>
        <releases>
            <enabled>false</enabled>
        </releases>
        <snapshots>
            <enabled>true</enabled>
        </snapshots>
    </repository>
</repositories>

Устаревшие версии

Если вы все еще используете устаревшую версию Dubbo, чья версия меньше OnClickListener 2.7.0, пожалуйста, используйте следующие Spring Boot starters:

Dubbo Spring Boot Dubbo Spring Boot
0.2.1.RELEASE 2.6.5+ 2.x
0.1.2.RELEASE 2.6.5+ 1.x

Клонирование с источника

Если вы хотите попробовать последние возможности, вы также можете скомпилировать из исходного кода следующим образом:1. Установка Maven текущего проекта в локальном репозитории.

Установка Maven = mvn install

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

Если вы ничего не знаете о Dubbo, пожалуйста, потратите несколько минут, чтобы узнать http://dubbo.apache.org/. После этого вы сможете углубиться в руководство пользователя Dubbo user guide.

Обычно существует два сценария использования для приложений Dubbo: один — это провайдер услуг Dubbo, второй — потребитель услуг Dubbo. Давайте быстро начнём работу с ними.

Сначала мы предполагаем интерфейс как Dubbo RPC API, который экспортируется провайдером услуги и используется потребителем услуги:

public interface DemoService {

    String sayHello(String name);

}

Провайдеры услуг Dubbo

  1. Провайдер службы реализует DemoService
@DubboService(version = "1.0.0")
public class DefaultDemoService implements DemoService {

    /**
     * Значение по умолчанию для ${dubbo.application.name} равно ${spring.application.name}
     */
    @Value("${dubbo.application.name}")
    private String serviceName;

    public String sayHello(String name) {
        return String.format("[%s] : Привет, %s", serviceName, name);
    }
}
```2. Предоставляет класс для автоматической настройки

    ```java
    @EnableAutoConfiguration
    public class DubboProviderDemo {

        public static void main(String[] args) {
            SpringApplication.run(DubboProviderDemo.class, args);
        }
    }
    ```

3. Конфигурирует файл `application.properties`:

    ```properties
    # Приложение Spring Boot
    spring.application.name=dubbo-auto-configuration-provider-demo
    # Базовые пакеты для сканирования компонентов Dubbo: @org.apache.dubbo.config.annotation.Service
    dubbo.scan.base-packages=org.apache.dubbo.spring.boot.sample.provider.service
    ```    # Приложение Dubbo
    ## Значение по умолчанию для dubbo.application.name равно ${spring.application.name}
    ## dubbo.application.name=${spring.application.name}

    # Протокол Dubbo
    dubbo.protocol.name=dubbo
    dubbo.protocol.port=12345

    ## Регистрация Dubbo
    dubbo.registry.address=N/A
    ```



### Клиент потребителя сервиса Dubbo

1. Клиент потребителя также предоставляет класс для автоматической настройки для ссылки на `DemoService`

    ```java
    @EnableAutoConfiguration
    public class DubboAutoConfigurationConsumerBootstrap {

        private final Logger logger = LoggerFactory.getLogger(getClass());

        @DubboReference(version = "1.0.0", url = "dubbo://127.0.0.1:12345")
        private DemoService demoService;

        public static void main(String[] args) {
            SpringApplication.run(DubboAutoConfigurationConsumerBootstrap.class).close();
        }

        @Bean
        public ApplicationRunner runner() {
            return args -> {
                logger.info(demoService.sayHello("mercyblitz"));
            };
        }
    }
    ```

2. Конфигурирует файл `application.yml`

    ```yaml
    spring:
      application:
        name: dubbo-auto-configure-consumer-sample
    ```

Если `DubboProviderDemo` работает корректно, убедитесь, что `DubboProviderDemo` запущен.

Дополнительные сведения см. в разделе [Примеры](dubbo-spring-boot-samples).




## Получение помощи

Имеете проблемы с приложением Dubbo Spring Boot? Мы готовы помочь!- Если вы обновляете версию, прочтите [заметки выпуска](https://github.com/apache/dubbo-spring-boot-project/releases) для получения инструкций по обновлению и новых возможностей.
- Обратитесь за помощью  Вы можете подписаться на [почтовый список пользователей Dubbo](mailto:dubbo+subscribe@googlegroups.com).
- Отправьте сообщение об ошибке на [github.com/apache/dubbo-spring-boot-project/issues](https://github.com/apache/dubbo-spring-boot-project/issues).

## Сборка с источниковЕсли вы хотите попробовать последние возможности Dubbo Spring Boot, её можно легко собрать с помощью [maven wrapper](https://github.com/takari/maven-wrapper). Ваш JDK версии 1.8 или выше.

```
$ ./mvnw clean install
```



## Модули

В проекте Apache Dubbo Spring Boot есть несколько модулей, давайте рассмотрим следующий обзор:

### [dubbo-spring-boot-parent](dubbo-spring-boot-parent)

Основное использование `dubbo-spring-boot-parent`  предоставление управления зависимостями для других модулей.


### [dubbo-spring-boot-autoconfigure](dubbo-spring-boot-autoconfigure)

`dubbo-spring-boot-autoconfigure` использует `@EnableAutoConfiguration` в Spring Boot, что позволяет автоматически конфигурировать компоненты основного Dubbo через `DubboAutoConfiguration`. Это снижает объём кода и устраняет необходимость использования XML-конфигураций.


### [dubbo-spring-boot-actuator](dubbo-spring-boot-actuator)

`dubbo-spring-boot-actuator` обеспечивает готовые к использованию в продакшне возможности (например, [проверки состояния](https://github.com/apache/dubbo-spring-boot-project/tree/master/dubbo-spring-boot-actuator#health-checks), [конечные точки](https://github.com/apache/dubbo-spring-boot-project/tree/master/dubbo-spring-boot-actuator#endpoints) и [внешние конфигурации](https://github.com/apache/dubbo-spring-boot-project/tree/master/dubbo-spring-boot-actuator#externalized-configuration)).


### [dubbo-spring-boot-starter](dubbo-spring-boot-starter)

`dubbo-spring-boot-starter` является стандартным начальным пакетом Spring Boot, который включает в себя [dubbo-spring-boot-autoconfigure](dubbo-spring-boot-autoconfigure) и [dubbo-spring-boot-actuator](dubbo-spring-boot-actuator). Он будет импортироваться непосредственно в ваше приложение.### [dubbo-spring-boot-samples](dubbo-spring-boot-samples)

Проект образцов Dubbo Spring Boot, который включает:

- [Образцы автозагрузки](dubbo-spring-boot-samples/auto-configure-samples)
- [Образцы внешних конфигураций](dubbo-spring-boot-samples/externalized-configuration-samples)
- [Образцы регистрации Zookeeper](https://github.com/apache/dubbo-spring-boot-project/tree/master/dubbo-spring-boot-samples/registry-samples/zookeeper-samples)
- [Образцы регистрации Nacos](https://github.com/apache/dubbo-spring-boot-project/tree/master/dubbo-spring-boot-samples/registry-samples/nacos-samples)

## Лицензия

Проект Apache Dubbo для Spring Boot находится под лицензией Apache 2.0. Подробнее см. файл [LICENSE](https://github.com/apache/dubbo-spring-boot-project/blob/master/LICENSE).

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

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

Введение

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

Обновления

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

Участники

все

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

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