サービスガバナンス春クラウドユーレカ(a)のノートの使用

春・クラウドプロジェクトを作成します。

Mavenプロジェクトのビルド:春-クラウドのデモは、
pom.xmlファイルに追加しました:

<parent>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-parent</artifactId>
    <version>1.5.20.RELEASE</version>
</parent>

<properties>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
    <java.version>1.8</java.version>
    <spring-cloud.version>Dalston.SR4</spring-cloud.version>
    <spring-boot.version>1.5.20.RELEASE</spring-boot.version>
</properties>

<!--对子模块依赖包的版本统一控制,子模块需要显示引用,子模块也可以重新声明版本-->
<dependencyManagement>
    <dependencies>
        <dependency>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-dependencies</artifactId>
            <version>${spring-cloud.version}</version>
            <type>pom</type>
            <scope>import</scope>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-dependencies</artifactId>
            <version>${spring-boot.version}</version>
            <type>pom</type>
            <scope>import</scope>
        </dependency>
    </dependencies>
</dependencyManagement>

サービスレジストリユーレカビルド・サービス

ユーレカ・サーバー:春・クラウドデモ・プロジェクトにモジュールを追加
参加のpom.xmlファイルに依存しています:

<dependencies>
    <dependency>
        <groupId>org.springframework.cloud</groupId>
        <artifactId>spring-cloud-starter-eureka-server</artifactId>
    </dependency>
</dependencies>

リソースディレクトリ内のファイルを作成します。次のようにapplication.propertiesは、読み取ります。

################### Eureka服务端配置 ####################
server.port=8761
eureka.instance.hostname=localhost
#不向注册中心注册自己
eureka.client.register-with-eureka=false
#由于注册中心的职责就是维护服务实例,它并不需要去检索服务, 所以也设置为false
eureka.client.fetch-registry=false
eureka.client.serviceUrl.defaultZone=http://${eureka.instance.hostname}:${server.port}/eureka/

起動クラスの作成:EurekaServerApplication.javaは、次の行を追加します。

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.cloud.netflix.eureka.server.EnableEurekaServer;

@SpringBootApplication
@EnableEurekaServer
public class EurekaServerApplication {

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

主な方法はユーレカは、完全なサーバ構築ので、EurekaServerApplicationクラスを実行し
、ブラウザでアクセスユーレカ・サーバをします。http:// localhost:8761 /

サービスの登録と発見:ユーレカビルドサービス登録

春・クラウドデモ・プロジェクトにモジュールを追加します。デモ・サービスは、
のpom.xmlファイルに依存することを追加しました:

<dependencies>
    <dependency>
        <groupId>org.springframework.cloud</groupId>
        <artifactId>spring-cloud-starter-eureka</artifactId>
    </dependency>
</dependencies>

リソースディレクトリ内のファイルを作成します。次のようにapplication.propertiesは、読み取ります。

########## Eureka客户端配置 ############
server.port=9806
spring.application.name=demo-service
eureka.client.serviceUrl.defaultZone=http://localhost:8761/eureka/

起動クラスの作成:DemoServiceApplication.javaは、次の行を追加します。

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.cloud.client.discovery.EnableDiscoveryClient;

@SpringBootApplication
@EnableDiscoveryClient
public class DemoServiceApplication {

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

主な方法は、DemoServiceApplicationクラスを実行し、完全な構築するため、ユーレカの登録
ブラウザでアクセスユーレカ・サーバをします。http:// localhost:8761 / 、 デモ・サービスはすでに来た登録見つけます

コントローラの追加:PortController.javaは、次の行を追加します。

import org.springframework.beans.factory.annotation.Value;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

@RestController
public class PortController {

    @Value("${server.port}")
    private String port;

    @RequestMapping("/port")
    public String getPort() {
        return "I am demo-service, I'm from port : " + port;
    }
}

再実行しユーレカ・クライアント・プロジェクト、mainメソッドのEurekaClientApplicationクラス
ブラウザで訪問します。http:// localhost:9806 /ポート、 すなわち出力:私はデモサービスだが、私はポートからM」:9806

可用性レジストリ

リソースディレクトリユーレカ・サーバープロジェクトの中で2つのプロファイルを作成します
application-peer1.properties

################### Eureka服务端配置 ####################
spring.application.name=eureka-server
server.port=8761
eureka.instance.hostname=peer1
#不向注册中心注册自己
eureka.client.register-with-eureka=false
#由于注册中心的职责就是维护服务实例,它并不需要去检索服务, 所以也设置为false
eureka.client.fetch-registry=false
#高可用配置:注册到其他配置中心
eureka.client.serviceUrl.defaultZone=http://peer2:8762/eureka/

application-peer1.properties

################### Eureka服务端配置 ####################
spring.application.name=eureka-server
server.port=8761
eureka.instance.hostname=peer2
#不向注册中心注册自己
eureka.client.register-with-eureka=false
#由于注册中心的职责就是维护服务实例,它并不需要去检索服务, 所以也设置为false
eureka.client.fetch-registry=false
#高可用配置:注册到其他配置中心
eureka.client.serviceUrl.defaultZone=http://peer1:8761/eureka/

編集システムC:\ WINDOWS \ System32に\がドライバーでファイルをホスト\ etcディレクトリ、次の行を追加します。

    127.0.0.1       peer1
    127.0.0.1       peer2

ユーレカ・サーバープロジェクトは、JARパッケージを標識し、その後のjava -jarで二回という名前のユーレカ-server.jarを実行し、別の設定ファイルを指定します。

java -jar eureka-server-0.0.1.jar --spring.profiles.active=peer1
java -jar eureka-server-0.0.1.jar --spring.profiles.active=peer2

背景

nohup java -jar eureka-server-0.0.1.jar --spring.profiles.active=peer1 >./log/eureka-1.log &

次に訪問します。http:// localhost:8761 / 、 それがDSレプリカコピーの項目の下に発見された:ピア2は
、次に訪問します。http:// localhost:8762 / 、 DSレプリカ項目の下で発見された項目をコピー:ピア1
今後の登録センターは、他の登録に高可用性レジストリの目的を達成するためのセンターをサインアップ

ユーレカのクラスタ構成にサービス登録登録:

eureka.client.serviceUrl.defaultZone=http://localhost:8761/eureka/,http://localhost:8762/eureka/

おすすめ

転載: www.cnblogs.com/yhongyin/p/11183842.html