Spring Coud Eureka入門(一)サービス登録センター詳細解「Spring Coud Eureka入門シリーズ」Spring Coud Eureka入門(一)サービス登録センター詳細解Spr


Spring Cloud Eureka入門(一)サービス登録センター詳細
「Spring Cloud Eureka入門シリーズ」
  • Spring Cloud Eurka入門(一)サービス登録センター詳細解
  • Spring Cloud Eurka入門(二)サービス提供者詳細解
  • Spring Cloud Eurka入門(三)サービス消費者詳細解
  • 本文の大綱
    1.Eurekaサービス治理
    1.1何がEurekaですか?
    1.2 Eurekaクラスタアーキテクチャ
    2.Eurekaプロジェクトを実行するspringcloud-eurka-server
    3.Eurekaプロジェクトを詳しく説明する springcloud-eureka-server
     
    一、Eurekaサービス治理
    1.1何がEurekaですか?
    エリカ、ここは Spring Cloud Eurekaの略称は、Spring Cloud Netflixコンポーネントの一つです.Spring Cloud Netflixの中核となるコンポーネントは、サービス管理(Eureka)、サービス切断(Hystrix)、ルート(Zuul)、クライアント負荷バランス(Ribbon)を含む.シリーズ第三編では、サービス消費者の解説が触れます. Ribbonの使用
    戻る Spring Coud Eurekaは、ベースです. Netflix Eureka(NetflixはJavaが実現するオープンソースソフトウェア)です.サービス治理(Eureka)は、サービス登録、サービス発見、サービス検出モニタなどを含みます. Eurekaはサービスセンターとして登録されています.
     
    1.2 Eurekaアーキテクチャ
    Eurekaはサービス治理として、必ず以下の点を満足します.
    -サービス自体にはシングルポイントの故障はありません.
    -クラスタをサポートする、すなわち利用可能性が高い
    -サービスとサービスの間にサービス登録センターを通してお互いのインスタンスを見つける
     
    サービスセンターとして、サービス登録センターを含みます.
    -管理サービスの例
    -サービス登録またはオフラインを提供します.
    -サービス発見の提供
    -サービスレジストリを二つのクライアントに提供する(すなわちサービスプロバイダと消費者)
     
    クライアントとして(つまりサービスプロバイダと消費者)、
    -接続サービス登録センター
    -サービス登録センターに登録またはオフラインサービスの例
    -サービス登録センターまたはサービス登録キャッシュリスト照会サービス
     
    Eurekaクラスタアーキテクチャを図に示す.
    二、Eurekaプロジェクトを実行するspringcloud-eurka-server 
    運行環境:JDK 7または8、Maven 3.0+
    技術スタック:Spring Cloud Dalston.SR 1、 スプリング-cloud-netflix 1.3.1、Spring Boot 1.5.4
     
    1. git cloneダウンロードプロジェクト springcloud-learning-example
    プロジェクトの住所はGitHubに見てください.  https://github.com/JeffLi1993/…ample
    :
    git clone https://github.com/JeffLi1993/ ... e.git
     
    2.Mavenコンパイルこのプロジェクト:
    cd springcloud-learning-example
    mvn clean install
    
    
    
    
    
    3.運転 springcloud-eureka-server Eurkaプロジェクト
    右クリックMain関数Run Eureka Server起動クラスEurkaServer Aplicationは、サービス登録センタープロジェクトを開始します.
    EurekaServerAplicationタイプアドレス:/springcloud-learning-example/springcloud-eurka-sample/springcloud-eurka-server/src/mail/java/spring/spring boot/EurkaServer Apple/java
    コンソールのConsoneはこのような情報を見て、スタート成功を表します.
    2017-06-30 10:32:47.549  INFO 2977 --- [      Thread-11] e.s.EurekaServerInitializerConfiguration : Started Eureka Server
    2017-06-30 10:32:47.625  INFO 2977 --- [           main] s.b.c.e.t.TomcatEmbeddedServletContainer : Tomcat started on port(s): 8888 (http)
    2017-06-30 10:32:47.626  INFO 2977 --- [           main] .s.c.n.e.s.EurekaAutoServiceRegistration : Updating port to 8888
    2017-06-30 10:32:47.632  INFO 2977 --- [           main] o.s.springboot.EurekaServerApplication   : Started EurekaServerApplication in 23.168 seconds
    4.アクセス Eureka登録センター可視化画面
    ブラウザを開く  http://localhost:8888/
     ,図に示すように
    本体情報が見られます.
    -システム状態:環境、運転時間、更新時間など
    -登録情報:サービス名、サービス住所、サービス状態
    -基本情報:環境、メモリ、コピー情報
    -インスタンス情報:IP、ポート
     
    三、Eurekaプロジェクトを詳しく説明する. springcloud-eureka-server 
    1.springcloud-eurka-server プロジェクトディレクトリ構造
    ├── pom.xml
    └── src
        └── main
            ├── java
            │   └── org
            │       └── spring
            │           └── springcloud
            │               ├── EurekaServerApplication.java
            └── resources
                └── application.yml
    EurekaServerAplication.java Eureka Server起動クラス
    appication.ymlプロファイル
    2.pom.xml配置
    
    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/ma ... gt%3B
        4.0.0
        springcloud
        springcloud-eureka-server
        0.0.1-SNAPSHOT
        springcloud-eureka-server :: Spring Cloud Eureka       
        
        
            org.springframework.boot
            spring-boot-starter-parent
            1.5.4.RELEASE
        
        
            
            
                org.springframework.cloud
                spring-cloud-starter-eureka-server
            
            
            
                org.springframework.boot
                spring-boot-starter-test
                test
            
        
        
            
                
                
                    org.springframework.cloud
                    spring-cloud-netflix
                    1.3.1.RELEASE
                    pom
                    import
                
            
        
        
            
                
                    org.apache.maven.plugins
                    maven-compiler-plugin
                    
                        1.8
                        1.8
                    
                
            
        
    
    使用の依存は
    -スプリング-cloud-netflix 1.3.1はSpring Coudです. Dalston.SR 1バージョンです.
    を選択します. スプリング-cloud-starter-eurka-server Eurka Serverモジュール依存
    上記のクライアントの負荷バランスRibbonは、ツリーに依存して見られます. スプリング-cloud-starter-eurka-serverはRibbon関連のライブラリに依存しています.通常のeureka自体がサービスとして登録されているため、他のサービスをクライアントとして起動することもできる.
     
    3.appication.ymlの設定
    server:
      port: 8888 #     
    eureka:
      instance:
        hostname: localhost #      
      client:
        registerWithEureka: false #     Eureka     。          ,      ,    false
        fetchRegistry: false      #       。          ,          ,      ,    false
      server:
        waitTimeInMsWhenSyncEmpty: 0 #             。   5 * MINUTES
    appication.propertyは、以下の構成説明を見ることができます.
    -server.port設定プロジェクトサービスポート
    を選択します. eureka.instance.hostname Eurekaの実例ホスト名
    を選択します. eurka.client.register WithEurka Eurekaにサービスを登録するかどうか.サービス登録センターサービスは、クラスタとして機能していませんので、自己登録は不要です.falseに設定します.
    を選択します. eurca.client.fetch Registry サービスを検索するかどうか.このアプリケーションはサービス登録センターであり、登録と発見サービスの役割を果たしています.検索サービスは必要なく、falseに設定されています.
    -eureka.server.waitTimeInMsWhenSyncEmpty 同期が空の場合の待ち時間を設定します.デフォルト5*MINUTES
     
    4.登録センターアプリケーション起動類
    /**
     * Spring Boot Eureka Server      
     *
     * Created by bysocket on 21/06/17.
     */
    @EnableEurekaServer     // Eureka Server   
    @SpringBootApplication  // Spring Boot     
    public class EurekaServerApplication {
        public static void main(String args) {
            //       
            //        Tomcat      Spring       Spring   
            SpringApplication.run(EurekaServerApplication.class,args);
        }
    }
    @EnbleEurekaServerマークは、アプリケーションとして使用されます. Eureka Serverは、自動的に関連する構成を読み取ることができます.
     
     
    四、結び
    この章では、サービスセンターServerとしてEurekaを登録する方法を紹介します. サービス提供者は具体的にどのようにサービス登録センターに自分を登録しますか?シリーズカタログは以下の通りです.
  • Spring Cloud Eurka入門(一)サービス登録センター詳細解
  • Spring Cloud Eurka入門(二)サービス提供者詳細解
  • Spring Cloud Eurka入門(三)サービス消費者詳細解
  •  
    資料:
    「Spring Cloud微服実務戦」https://re.jd.com/cps/item/12172344.html
    公式文書
    http://cloud.spring.io/spring- …EASE/