SpringCloudマイクロ生産者 - 消費者サービスの実装とリボンのロードバランシング

一、SpringCloud_eureka_server

  1、輸入に依存

 <依存性>
        <依存>
            <groupIdを> JUnitの</ groupIdを>
            <たartifactId> JUnitの</たartifactId>
            <バージョン> 4.11 </バージョン>
            <スコープ>テスト</スコープ>
        </依存関係>
        <! - 依存ユーレカ - >
        <依存>
            <groupIdを> org.springframework.cloud </ groupIdを>
            <たartifactId>ばねクラウドスタータのNetflix、ユーレカサーバ</たartifactId>
        </依存関係>
    </依存関係>
    <dependencyManagement>
        <依存性>
            <! - 依存SpringCloud  - >
            <依存>
                <groupIdを> org.springframework.cloud </ groupIdを>
                <たartifactId>春・クラウドの依存関係</たartifactId>
                <バージョン> Greenwich.RELEASE </バージョン>
                <タイプ> POM </タイプ>
                <スコープ>インポート</スコープ>
            </依存関係>
        </依存関係>
    </ dependencyManagement>
コードの表示

(注!自動生成ここでは、ケースがない場合には、ライン上で次のように変更します)

2、設定ファイルapplication.yml

##アプリケーション名
春:
  応用:
    名前:ユーレカ - サーバー
    ##文の現在eurekaserverポート番号
サーバ:
  ポート:8888
##設定ユーレカ
ユーレカ:
  クライアント:
    ##代表は、登録センターに行くかどうかを自分自身を登録します
    登録 -with-ユーレカ:偽の
    ##レジストリ自分自身を示しました。
    フェッチ -registry:偽の
    ##アドレスの設定
    サービス - URL:
      defaultZoneます。http:// localhostを:8888 /ユーレカ

3.スタートクラス

 

 図4.効果

 

第二に、生産者と消費者

  1、SpringCloud_eureka_provider(制作プロジェクト)

    (1)依存性を導入

<依存性>
        <依存>
            <groupIdを> JUnitの</ groupIdを>
            <たartifactId> JUnitの</たartifactId>
            <バージョン> 4.11 </バージョン>
            <スコープ>テスト</スコープ>
        </依存関係>
        <! - 依存ユーレカ - >
        <依存>
            <groupIdを> org.springframework.cloud </ groupIdを>
            <たartifactId>ばねクラウドスタータのNetflix、ユーレカサーバ</たartifactId>
        </依存関係>
        <依存>
            <groupIdを> org.springframework.cloud </ groupIdを>
            <たartifactId>春・クラウド・スタータ装う</たartifactId>
            <バージョン> 1.35 .RELEASE </バージョン>
        </依存関係>
        <依存>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>
    </dependencies>
    <dependencyManagement>
        <dependencies>
            <!--springCloud依赖-->
            <dependency>
                <groupId>org.springframework.cloud</groupId>
                <artifactId>spring-cloud-dependencies</artifactId>
                <version>Greenwich.RELEASE</version>
                <type>pom</type>
                <scope>import</scope>
            </dependency>
        </dependencies>
    </dependencyManagement>
View Code

(注意!如果这里自动生成的不是这样的,改成以下这样就行了)

 (2)配置application.yml文件

 

 

 (3)启动类

 

 (4)创建Service层

 

 

(5)创建ServiceImpl层

 

 

 

2、SpringCloud_eureka_consumer(生产者项目)

(1)导入依赖  

  <parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>2.1.4.RELEASE</version>
    </parent>
    <modelVersion>4.0.0</modelVersion>

    <artifactId>springcloud_eureka_consumer</artifactId>

    <name>springcloud_eureka_consumer</name>
    <!-- FIXME change it to the project's website -->
    <url>http://www.example.com</url>

    <properties>
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
        <maven.compiler.source>1.7</maven.compiler.source>
        <maven.compiler.target>1.7</maven.compiler.target>
    </properties>

    <dependencies>
        <dependency>
            <groupId>junit</groupId>
            <artifactId>junit</artifactId>
            <version>4.11</version>
            <scope>test</scope>
        </dependency>
        <!--eureka依赖-->
        <dependency>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-starter-netflix-eureka-server</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-starter-openfeign</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-starter-ribbon</artifactId>
        </dependency>

    </dependencies>
    <dependencyManagement>
        <dependencies>
            <!--springCloud依赖-->
            <dependency>
                <groupId>org.springframework.cloud</groupId>
                <artifactId>spring-cloud-dependencies</artifactId>
                <version>Greenwich.RELEASE</version>
                <type>pom</type>
                <scope>import</scope>
            </dependency>
        </dependencies>
    </dependencyManagement>
View Code

(2)配置application.yml文件

 

 (3)创建Controller层

 

 (4)启动类

 

 效果:

 

 

 

 

 三、实现负载均衡

1、更改Controller层的访问地址

 

 2.启动类

 

 

 3、实现效果如下

    勾选上此选项即可启动多个端口

    

生产者启动两个或两个以上端口访问

 

 

 

 指定负载均衡策略

 

  四、Feign负载均衡策略

1、导入依赖

<!--导入feign依赖-->
    <dependency>
      <groupId>org.springframework.cloud</groupId>
      <artifactId>spring-cloud-starter-openfeign</artifactId>
    </dependency>

 2、创建Service层(生产者接口名称不可有下划线)

    

   3、Controller层

 

 5、实现效果如下

同样至少启动两个访问端口

 

 

总共访问3此次,第一个端口走两次,第二个端口走一次(轮训机制)

 

 

 

 

 

 

おすすめ

転載: www.cnblogs.com/mayuan01/p/12055410.html