成都网站建设设计

将想法与焦点和您一起共享

spring-cloud之Eureka1-创新互联

继springcloud初始项目后的继续完善:https://blog.csdn.net/newsun87/article/details/127876983?spm=1001.2014.3001.5501

庆阳ssl适用于网站、小程序/APP、API接口等需要进行数据传输应用场景,ssl证书未来市场广阔!成为创新互联的ssl证书销售渠道,可以享受市场价格4-6折优惠!如果有意向欢迎电话联系或者加微信:18982081108(备注:SSL证书合作)期待与您的合作!新建一个maven项目

导入依赖>添加配置>添加使用Enable注解>

1.导入依赖
org.springframework.cloudspring-cloud-starter-eureka-server1.4.6.RELEASE
2.Eureka配置文件
server:
 port: 8001
#Eureka配置
eureka:
 instance:
   hostname: localhost #Eureka服务端实例名称
 client:
   register-with-eureka: false #是否向注册中心注册自己
   fetch-registry: false  #false表示自己为注册中心
   service-url:
     defaultZone: http://${eureka.instance.hostname}:${server.port}/eureka/
3.启动类,添加Enable注解
@SpringBootApplication
@EnableEurekaServer
public class EurekaServer {public static void main(String[] args) {SpringApplication.run(EurekaServer.class,args);
    }
}

开发时遇到的问题1
1.Failed to retrieve application JMX service URL 在启动Eureka项目时一直无法启动报错,百度后很多人遇到这个问题,解决方案如下。
在这里插入图片描述
选择报错的工程启动类,相同的配置,不是每一个都启动报错
在这里插入图片描述
取消选择springBoot后取消勾选
在这里插入图片描述
开发时遇到的问题2

在建父工程的时候,我选择的springCloud版本和springBoot版本分别是:
springCloud :Greenwich.SR2
springBoot :2.1.4.RELEASE
结果在启动Eureka工程时一直报错,报错内容没有完全复制,百度后大概知道是版本不匹配导致的,但是不知道选择哪个版本合适,
Eureka:1.4.6.RELEASE
最后升级了springCloud和springBoot版本搞定,具体报错内容没有保存

启动后能访问以下页面,表示eureka服务启动成功,接下来需要在服务提供者和服务消费者两个工程配置Eureka配置相关信息,用于注册和远程调用
在这里插入图片描述

4.在服务提供者加入Eureka
导入Eureka依赖org.springframework.cloudspring-cloud-starter-eureka1.4.6.RELEASE
5.在服务提供者配置文件中添加Eureka配置
#Eureka注册位置
eureka:
  client:
    service-url:
      defaultZone : http://localhost:8001/eureka/
6.启动类添加注解

@EnableEurekaClient//在服务启动后注册到eureka

先启动该Eureka,再启动服务提供者
在这里插入图片描述
修改Eureka上的默认描述,在配置文件修改
在这里插入图片描述

7.完善监控信息

可以在服务提供者中,配置想让消费者看到的信息
在这里插入图片描述
pom文件导入新的jar

org.springframework.bootspring-boot-starter-actuator

配置文件中添加展示信息

info:
  app:
    name : springcloud-kuang
    company : com.kuang.study

在这里插入图片描述
跳转结果就是展示配置信息主要用户介绍注册中心
在这里插入图片描述

8.注册发现(只做功能介绍,实际作用不大)

获取相关服务提供者信息,在服务提供者添加接口信息

import org.springframework.cloud.client.discovery.DiscoveryClient;

@Autowired
    private DiscoveryClient client;
@GetMapping("/dept/decovery")
public Object getClient(){//获取微服务列表清单
        Listservices = client.getServices();
        //获取服务提供者的id
    System.out.println("services=>"+services);
Listinstances = client.getInstances("SPRINGCLOUD-PROVIER-DEPT");
//便利服务提供的信息
    for (ServiceInstance serviceInstance :instances
         ) {System.out.println(serviceInstance.getHost()+":="+serviceInstance.getPort()+":="+serviceInstance.getUri()+":="+serviceInstance.getServiceId());
        
    }
        return  client;
    }

在启动类添加注解

@SpringBootApplication
@EnableEurekaClient//在服务启动后注册到eureka
@EnableDiscoveryClient//服务发现生效注解
public class DeptProvider {public static void main(String[] args) {SpringApplication.run(DeptProvider.class,args);
    }
}

启动后访问接口
在这里插入图片描述
在这里插入图片描述

eureka集群配置 1. 新建不同的eureka服务端工程项目

在这里插入图片描述

2.服务端配置修改 以8003为例
server:
  port: 8003
#Eureka配置
eureka:
  instance:
    hostname: eureka8003.com #Eureka服务端实例名称
  client:
    register-with-eureka: false #是否向注册中心注册自己
    fetch-registry: false  #false表示自己为注册中心
    service-url:  #关联不同的eureka地址
      defaultZone: http://eureka8001.com:8001/eureka/,http://eureka8002.com:8002/eureka/
3.服务提供者修该配置集群注册的服务
#Eureka注册位置
eureka:
client:
  service-url:
    defaultZone :  //写在本行,三个注册服务,注意格式
    http://eureka8001.com:8001/eureka/,
    http://eureka8002.com:8002/eureka/,
    http://eureka8003.com:8003/eureka/

== 任意注册中心,都有关联另外两个注册中心,同时都注册了服务提供者8002 ==
在这里插入图片描述

你是否还在寻找稳定的海外服务器提供商?创新互联www.cdcxhl.cn海外机房具备T级流量清洗系统配攻击溯源,准确流量调度确保服务器高可用性,企业级服务器适合批量采购,新人活动首月15元起,快前往官网查看详情吧


网站栏目:spring-cloud之Eureka1-创新互联
标题网址:http://chengdu.cdxwcx.cn/article/ddoopp.html