ホームページ > Java > &#&チュートリアル > Springboot の nocos を統合して使用する方法

Springboot の nocos を統合して使用する方法

WBOY
リリース: 2023-05-21 15:32:09
転載
1277 人が閲覧しました

はじめに

Nacos は、マイクロサービスの検出、構成、管理を支援することに尽力しています。 Nacos は、動的なサービス検出、構成、メタデータ、トラフィック管理を迅速に実装するのに役立つ一連の使いやすい機能を提供します。

Nacos は、マイクロサービス プラットフォームをより迅速かつ簡単に構築、配信、管理できるように支援します。 Nacos は、サービス中心の最新のアプリケーション アーキテクチャ (マイクロサービス パラダイムやクラウド ネイティブ パラダイムなど) を構築するために使用されるインフラストラクチャです。

1、プロジェクトの作成

最初に Maven プロジェクトを作成します。親プロジェクトの pom は次のとおりです。次のように:

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>
    <groupId>org.example</groupId>
    <artifactId>configDemo</artifactId>
    <version>1.0-SNAPSHOT</version>
    <parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>2.3.2.RELEASE</version>
    </parent>
    <dependencies>
        <dependency>
            <groupId>com.alibaba.cloud</groupId>
            <artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>
    </dependencies>
    <dependencyManagement>
        <dependencies>
            <dependency>
                <groupId>com.alibaba.cloud</groupId>
                <artifactId>spring-cloud-alibaba-dependencies</artifactId>
                <version>2.2.5.RELEASE</version>
                <type>pom</type>
                <scope>import</scope>
            </dependency>
        </dependencies>
    </dependencyManagement>
</project>
ログイン後にコピー

2、nacos-server サービスを開始します

アクセスされた URL は次のとおりです: http://localhost:8848/nacos/ デフォルトのポートは 8848、アカウントのパスワードは次のとおりです。 nacos/nocos

3、動的構成を有効にするコントローラーを作成します

import org.springframework.beans.factory.annotation.Value;
import org.springframework.cloud.context.config.annotation.RefreshScope;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RestController;
/**
 * @author yhq
 * @version 1.0
 * @date 2022/7/15 19:07
 */
@RestController
@RefreshScope  //@RefreshScope:需要配置这个才能动态更新配置。
public class TestController {
    @Value("${name}")
    private String name;
    @GetMapping("/getName")
    public String test(){
        return name;
    }
}
ログイン後にコピー

4、構成ファイル boostrap.yaml

springboot のデフォルト読み込み構成ファイル シーケンスを追加します:

bootstrap.properties -> ; bootstrap.yml -> application.properties -> application.yml このうち、bootstrap.properties が最も優先度が高く設定されており、先にロードされたものは後からロードされたもので上書きされます。 , .properties と .yml が同時に存在する場合、.properties は無効になりますが、.yml は動作します。

##Port
server:
port: 8888
#構成プロジェクト名
spring:
application:
#configdemo のデフォルトは DateId です。 nacos Name
name: configdemo
#テスト構成ファイルを指定します
profiles:
active: test
cloud:
nacos:
config:
server-addr: localhost :8848
#yaml
ファイル拡張子: yaml

の nacos ファイルをロードします。次のように、起動時にファイルがロードされることがわかります。

##5、nacos 構成Springboot の nocos を統合して使用する方法

構成された configdemo および configdemo-test.yaml

注: その読み込みルールは次のとおりです: # 1.DataId

-リモート構成センターを読み取るために使用される特定の構成ファイルの完全な形式は次のとおりです:

- ${prefix}-${spring.profile.active}.${file-extension}

a. プレフィックスのデフォルトは spring.application.name の値であり、設定項目 spring.cloud.nacos.config.prefix を通じて設定することもできます。

b. spring.profile.active は現在の環境に対応するプロファイルの詳細については、Spring Boot ドキュメントを参照してください。 注: spring.profile.active が空の場合、対応するコネクタは存在せず、dataId のスプライシング形式は ${prefix}.${ になります。 file-extension}

c. file-exetension は構成コンテンツのデータ形式であり、構成アイテム spring.cloud.nacos.config.file-extension を通じて構成できます。現在、プロパティと yaml タイプのみがサポートされています。

configdemo と name の設定が configdemo-test.yaml に存在する場合、configdemo-test.yaml

が優先され、アクセス結果は次のようになります。

#

以上がSpringboot の nocos を統合して使用する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:yisu.com
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート