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

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

Присоединиться к Gitlife
Откройте для себя и примите участие в публичных проектах с открытым исходным кодом с участием более 10 миллионов разработчиков. Приватные репозитории также полностью бесплатны :)
Присоединиться бесплатно
Клонировать/Скачать
README_CN.md 14 КБ
Копировать Редактировать Web IDE Исходные данные Просмотреть построчно История
Отправлено 12.03.2025 11:32 f177c5b

Проект Dubbo Spring Boot

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

Dubbo Apache Dubbo™ — это высокопроизводительный Java-фреймворк для удалённого вызова процедур (RPC). Spring Boot — это проект, который позволяет легко создавать приложения с использованием Spring Boot.

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

Английское описание

Выпущенные версии

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

<dependency>
    <groupId>org.apache.dubbo</groupId>
    <artifactId>dubbo-spring-boot-starter</artifactId>
    <version>{latest_version}</version>
</dependency>

Здесь {latest_version} — это номер самой новой доступной версии.```xml <spring-boot.version>2.3.0.RELEASE</spring-boot.version> <dubbo.version>2.7.8</dubbo.version>

org.springframework.boot spring-boot-dependencies ${spring-boot.version} pom import ```

Здесь нет необходимости в переводе, поскольку текст внутри XML-тегов представляет собой метаданные проекта и конфигурационные свойства, которые обычно остаются на английском языке.```markdown <зависимость> <групповой_ид>org.apache.dubbo</групповой_ид> <идентификатор_artifact>dubbo-dependencies-bom</идентификатор_artifact> <версия>${dubbo.version}</версия> <тип>pom</тип> <область>import</область> </зависимость>


Для получения более подробной информации обратитесь к разделу [Английское README](README.md).

```markdown
    <зависимости>
        <зависимость>
            <групповой_ид>org.apache.dubbo</групповой_ид>
            <идентификатор_artifact>dubbo</идентификатор_artifact>
            <исключения>
                <исключение>
                    <групповой_ид>org.springframework</групповой_ид>
                    <идентификатор_artifact>spring</идентификатор_artifact>
                </исключение>
                <исключение>
                    <групповой_ид>javax.servlet</групповой_ид>
                    <идентификатор_artifact>servlet-api</идентификатор_artifact>
                </исключение>
                <исключение>
                    <групповой_ид>log4j</групповой_ид>
                    <идентификатор_artifact>log4j</идентификатор_artifact>
                </исключение>
            </исключения>
        </зависимость>
    </зависимости>

Взаимозависимости

<dependencies>
    <!-- Dubbo Spring Boot Starter -->
    <dependency>
        <groupId>org.apache.dubbo</groupId>
        <artifactId>dubbo-spring-boot-starter</artifactId>
        <version>2.7.8</version>
    </dependency>

    <dependency>
        <groupId>org.apache.dubbo</groupId>
       cq <artifactId>dubbo</artifactId>
    </dependency>
</dependencies>

Если ваш проект сталкивается с проблемами зависимостей, попробуйте добавить следующие Maven зависимости в файл pom.xml вашего проекта:

<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 ниже 2.7.0, воспользуйтесь соответствующими версиями Dubbo Spring Boot:

| Dubbo Spring Boot | Dubbo  | Spring Boot |
| ----------------- | ------ | ----------- |
| [0.2.1.RELEASE](https://github.com/apache/dubbo-spring-boot-project/tree/0.2.x)     | 2.6.5+ | 2.x         |
| [0.1.2.RELEASE](https://github.com/apache/dubbo-spring-boot-project/tree/0.1.x)     | 2.6.5+ | 1.x         |

### Сборка из исходного кода

Если вам требуется использовать последнюю версию `dubbo-spring-boot-project`, вы можете выполнить сборку текущего проекта с помощью Maven и установить его в локальный Maven репозиторий.

1. Выполните команду `mvn install` для текущего проекта
   > Maven install = `mvn install`

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

Если вы ещё не знакомы с Dubbo, потратите несколько минут на изучение информации по адресу http://dubbo.apache.org/. После этого, если вам потребуется более подробное руководство, обратитесь к [руководству пользователя](http://dubbo.apache.org/zh-cn/docs/user/quick-start.html).

Обычно Dubbo приложение имеет два основных использования: первое — это предоставление сервиса Dubbo, второе — использование сервиса Dubbo. Разумеется, возможно совмещение этих двух ролей. Давайте начнём!Предположим, что существует Dubbo RPC API, который предоставляется стороной-поставщика для стороны-потребителя:

```java
public interface DemoService {

    String sayHello(String name);

}
```

### Реализация стороны-поставщика Dubbo

1. Реализуйте интерфейс `DemoService`
```java
@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. Создание Spring Boot запускающего класса

```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` с помощью `@DubboReference`:```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
    ```

Убедитесь, что сервис, предоставляющий Dubbo, доступен, и запущенный класс `DubboProviderDemo` работает корректно.


Дополнительные детали реализации можно найти в [примерах Dubbo](dubbo-spring-boot-samples).


## Общение сообщества

Если вы столкнулись с проблемами при использовании Dubbo Spring Boot или у вас есть предложения, мы очень ценим вашу поддержку!

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


## Модульный проект

Dubbo Spring Boot использует многомодульную архитектуру Maven, модули следующие:


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

Модуль [dubbo-spring-boot-parent](dubbo-spring-boot-parent) управляет зависимостями Maven для всего проекта Dubbo Spring Boot.


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

Модуль [dubbo-spring-boot-autoconfigure](dubbo-spring-boot-autoconfigure) предоставляет реализацию Spring Boot's `@EnableAutoConfiguration`, включая компонент `DubboAutoConfiguration`,
который упрощает конфигурацию основных компонентов Dubbo.### [dubbo-spring-boot-actuator](dubbo-spring-boot-actuator)

Модуль [dubbo-spring-boot-actuator](dubbo-spring-boot-actuator) обеспечивает готовность к использованию в продакшне:

* [Здоровье системы](dubbo-spring-boot-actuator#health-checks)
* [Контрольные точки](dubbo-spring-boot-actuator#endpoints)
* [Внешняя конфигурация](dubbo-spring-boot-actuator#externalized-configuration)


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

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


### [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 )

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

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