Eureka 注册中心
文章目录
- 启动Eureka serve
- 第一步 加入依赖
- 第二步 写主配置
- 第三步 在主启动类的上面加注解
- 第四步启动测试
- 启动 Eereka client
- 第一步加入依赖
- 第二步 写主配置文件
- 第三步 在主启动类上加上以下注解
- 第四步 启动服务 出现下面的界面表示成功
- 同时注册多个 Eureka client
- 显示以下界面表示成功
- 集群Eureka server (相互注册,相互守望)
- 第一步 导入依赖
- 第二步 修改host文件 (防止名字相同无法区分)
- 第三步 修改主配置文件7001
- 第三步 修改从主配置文件7002
- 第四步 在两个主启动类上加上以下注解
- 第五步进行测试
- Eureka client 注册进集群 Eureka server
- 将 相同的uereka client 配置进不同发热 server
- 测试成功如下界面
- Eureka client 集群
- 创建服务集群中的服务和创建单个服务一样,每个服务都需要注册到 Eureka client之中
- 使用服务集群的的步骤
- 在消费者段改动的地方一 对RestTemplate的改动
- 在controller中的改动 地址不在写死 而是改成 spring-application-name 的值(大写)
- 健康检查
- 修饰主机名称
- 修改显示ip
启动Eureka serve
第一步 加入依赖
<dependency><groupId>org.springframework.cloud</groupId><artifactId>spring-cloud-starter-netflix-eureka-server</artifactId><version>3.0.5</version></dependency>
第二步 写主配置
server:port: 7001
eureka:instance:hostname: localhost #eureka 服务端的实例名称client:register-with-eureka: false #表示不向注册中心注册自己fetch-registry: false #表示自己就是注册端,其职责就是维护服务实例,并不需要检索服务service-url:defaultZone: http://${eureka.instance.hostname}:${server.port}/eureka/ #设置与EurekaServer交互的地址查询服务和注册服务都需要依赖这个地址
第三步 在主启动类的上面加注解
package com.atguigu.springcloud;import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.cloud.netflix.eureka.server.EnableEurekaServer;@EnableEurekaServer/*主要是加上这个注解*/
@SpringBootApplication
public class EurekaMain7001 {public static void main(String[] args) {SpringApplication.run(EurekaMain7001.class,args);}
}
第四步启动测试
出现以下界面表示启动成功

启动 Eereka client
第一步加入依赖
<dependency><groupId>org.springframework.cloud</groupId><artifactId>spring-cloud-starter-netflix-eureka-client</artifactId><version>3.0.5</version></dependency>
第二步 写主配置文件
eureka:client:#表示是否将自己注册进EurekaServer默认为true。register-with-eureka: true#是否从EurekaServer抓取已有的注册信息,默认为true。单节点无所谓,集群必须设置为true才能配合ribbon使用负载均衡fetchRegistry: trueservice-url:#单机版defaultZone: http://localhost:7001/eureka# 集群版#defaultZone: http://eureka7001.com:7001/eureka,http://eureka7002.com:7002
第三步 在主启动类上加上以下注解
@EnableEurekaClient
第四步 启动服务 出现下面的界面表示成功

同时注册多个 Eureka client
注册步骤和单独注册一个时一样
显示以下界面表示成功

集群Eureka server (相互注册,相互守望)
第一步 导入依赖
同上
第二步 修改host文件 (防止名字相同无法区分)



第三步 修改主配置文件7001

server:port: 7001
eureka:instance:hostname: eurake7001.com# hostname: localhost #eureka 服务端的实例名称client:register-with-eureka: false #表示不向注册中心注册自己fetch-registry: false #表示自己就是注册端,其职责就是维护服务实例,并不需要检索服务service-url:defaultZone: http://eurake7002.com:7002/eureka/ #设置与EurekaServer交互的地址查询服务和注册服务都需要依赖这个地址
第三步 修改从主配置文件7002

server:port: 7002
eureka:instance:hostname: eurake7002.com# hostname: localhost #eureka 服务端的实例名称client:register-with-eureka: false #表示不向注册中心注册自己fetch-registry: false #表示自己就是注册端,其职责就是维护服务实例,并不需要检索服务service-url:defaultZone: http://eurake7001.com:7001/eureka/ #设置与EurekaServer交互的地址查询服务和注册服务都需要依赖这个地址
第四步 在两个主启动类上加上以下注解
@EnableEurekaClient
第五步进行测试
出现以下界面表示Eureka集群配置成功


Eureka client 注册进集群 Eureka server

将 相同的uereka client 配置进不同发热 server
只需要改动主配置文件
server:port: 88
spring:application:name: cloud-order-serviceeureka:client:#表示是否将自己注册进EurekaServer默认为true。register-with-eureka: true#是否从EurekaServer抓取已有的注册信息,默认为true。单节点无所谓,集群必须设置为true才能配合ribbon使用负载均衡fetchRegistry: trueservice-url:#单机版
# defaultZone: http://localhost:7001/eureka# 集群版defaultZone: http://eureka7002.com:7002/eureka/,http://eureka7001.com:7001/eureka/
server:port: 8001spring:application:name: cloud-payment-servicezipkin:base-url: http://localhost:9411datasource:type: com.alibaba.druid.pool.DruidDataSource # 当前数据源操作类型driver-class-name: org.gjt.mm.mysql.Driver # mysql驱动包url: jdbc:mysql://localhost:3306/test?useUnicode=true&characterEncoding=utf-8&useSSL=falseusername: rootpassword: 123456mybatis:mapperLocations: classpath:mapper/*.xmltype-aliases-package: com.atguigu.springcloud.entities # 所有Entity别名类所在包eureka:client:#表示是否将自己注册进EurekaServer默认为true。register-with-eureka: true#是否从EurekaServer抓取已有的注册信息,默认为true。单节点无所谓,集群必须设置为true才能配合ribbon使用负载均衡fetchRegistry: trueservice-url:#单机版
# defaultZone: http://localhost:7001/eureka# 集群版defaultZone: http://eureka7002.com:7002/eureka/,http://eureka7001.com:7001/eureka/
测试成功如下界面


Eureka client 集群
创建服务集群中的服务和创建单个服务一样,每个服务都需要注册到 Eureka client之中


使用服务集群的的步骤
在消费者段改动的地方一 对RestTemplate的改动
加上负载均衡注解 @LoadBalanced
@Configuration
public class ApplicationContextConfig {@LoadBalanced@Beanpublic RestTemplate getRestTemplate(){return new RestTemplate();}
}
在controller中的改动 地址不在写死 而是改成 spring-application-name 的值(大写)
具体的值防止写错去服务中心查看
public static final String PAYMENT_URL =“http://CLOUD-PAYMENT-SERVICE”;
@RestController
@Slf4j
public class OrderController {public static final String PAYMENT_URL ="http://CLOUD-PAYMENT-SERVICE";@Resourceprivate RestTemplate restTemplate;@GetMapping("/consumer/payment/create")public CommonResult<Payment> create(Payment payment){return restTemplate.postForObject(PAYMENT_URL+"/payment/create",payment,CommonResult.class);}@GetMapping("/consumer/payment/get/{id}")public CommonResult<Payment> getPayment(@PathVariable("id") Long id){System.out.println("--------------------");return restTemplate.getForObject(PAYMENT_URL+"/payment/get/"+id,CommonResult.class);}
}
健康检查

修饰主机名称

修改显示ip



本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!
