欢迎访问昆山宝鼎软件有限公司网站! 设为首页 | 网站地图 | XML | RSS订阅 | 宝鼎邮箱 | 后台管理


新闻资讯

MENU

软件开发知识

开发环境 Gradle 4.0 Spring Boot 2.0.0.M3 Spring Cloud Netflix E

点击: 次  来源:宝鼎软件 时间:2017-10-16

原文出处: Way Lau

Eureka 是 Netflix 出品的用于实现处事注册和发明的东西。 Spring Cloud 集成了 Eureka,并提供了开箱即用的支持。个中, Eureka 又可细分为 Eureka Server 和 Eureka Client。

本例子将演示如何通过 Spring Cloud Eureka 来快速实现处事的注册和发明。

开拓情况

  • Gradle 4.0
  • Spring Boot 2.0.0.M3
  • Spring Cloud Netflix Eureka Server Finchley.M2
  • Spring Cloud Netflix Eureka Client Finchley.M2
  • 从 Spring Initializr 举办项目标初始化

    会见http://start.spring.io/ 举办项目标初始化。我们将该项目定名为micro-weather-eureka-server。

     开拓情况 Gradle 4.0 Spring Boot 2.0.0.M3 Spring Cloud Netflix Eureka Server Finchley.M2 Spri 昆山软件开拓 ng Cloud Netflix Eureka Client Finchley.M2 从 Spring Initializr 举办项目标初始化 会见http://start.spring.io/ 举办项目标初始化

    变动设置

    按照下面两个博客的指引来设置,加快项目标构建。

  • Gradle Wrapper 引用当地的宣布包 : https://waylau.com/change-gradle-wrapper-distribution-url-to-local-file/
  • 利用Maven镜像 : https://waylau.com/use-maven-mirrors/
  • 启用 Eureka Server

    为启用 Eureka Server ,在 Application 上增加@EnableEurekaServer注解即可。

    @SpringBootApplication
    @EnableEurekaServer
    public class Application {
    
    	public static void main(String[] args) {
    		SpringApplication.run(Application.class, args);
    	}
    }

    修改项目设置

    修改 application.properties,增加如下设置。

    server.port: 8761
    
    eureka.instance.hostname: localhost
    eureka.client.registerWithEureka: false
    eureka.client.fetchRegistry: false
    eureka.client.serviceUrl.defaultZone: http://${eureka.instance.hostname}:${server.port}/eureka/

    个中:

  • server.port: 指明白应用启动的端标语
  • eureka.instance.hostname: 应用的主机名称
  • eureka.client.registerWithEureka: 值为false意味着自身仅作为处事器,劳务派遣管理系统,不作为客户端
  • eureka.client.fetchRegistry: 值为false意味着无需注册自身
  • eureka.client.serviceUrl.defaultZone: 指明白应用的URL
  • 启动 Eureka Server

    启动应用,会见http://localhost:8761/,可以看到 Eureka Server 自带的 UI 打点界面。

     开拓情况 Gradle 4.0 Spring Boot 2.0.0.M3 Spring Cloud Netflix Eureka Server Finchley.M2 Spri 昆山软件开拓 ng Cloud Netflix Eureka Client Finchley.M2 从 Spring Initializr 举办项目标初始化 会见http://start.spring.io/ 举办项目标初始化

    建设 Eureka Client

    我们在micro-weather-eureka-server基本上,将建设一个micro-weather-eureka-client 作为客户端,并演示如何让将自身向注册处事器举办注册,让其可以其他处事都挪用。

    变动设置

    增加如下设置:

    dependencies {
        //...
    
    	compile('org.springframework.cloud:spring-cloud-starter-netflix-eureka-client')
    
    	//...
    }

    一个最简朴的 Eureka Client

    @SpringBootApplication
    @EnableDiscoveryClient
    @RestController
    public class Application {
    
        @RequestMapping("/hello")
        public String home() {
            return "Hello world";
        }
    
    	public static void main(String[] args) {
    		SpringApplication.run(Application.class, args);
    	}
    }

    个中@EnableDiscoveryClient启用了处事发明的成果,只要 Eureka Client 启动了,就能被 Eureka Server 所感知。

    项目设置:

    spring.application.name: micro-weather-eureka-client
    
    eureka.client.serviceUrl.defaultZone: http://localhost:8761/eureka/

    运行

    别离在 8081 和 8082 上启动了客户端示例。

    java -jar micro-weather-eureka-client-1.0.0.jar --server.port=8081
    
    java -jar micro-weather-eureka-client-1.0.0.jar --server.port=8082

    可以在 Eureka Server 上看到这两个实体的信息。

     开拓情况 Gradle 4.0 Spring Boot 2.0.0.M3 Spring Cloud Netflix Eureka Server Finchley.M2 Spri 昆山软件开拓 ng Cloud Netflix Eureka Client Finchley.M2 从 Spring Initializr 举办项目标初始化 会见http://start.spring.io/ 举办项目标初始化

    源码

    本章节源码,软件开发,见https://github.com/waylau/spring-cloud-tutorial samples 目次下的micro-weather-eureka-server 和 micro-weather-eureka-client 。

    软件开发