当前位置:   article > 正文

SpringCloud 入门探索之Eureka_spring cloud eurka instances ip

spring cloud eurka instances ip

        经过上篇文章(SpringCloud入门探索)的讲解相信大家对SpringCloud有了大概的认识,今天就为大家讲解SpringCloud中的一个关键组件Eureka,也是所有服务之间相互调用API的基础。

        Eureka:又分为Eureka客户端和Eureka服务器,Eureka服务器:服务注册中心,Eureka客户端:需要注册的服务。说的通俗易懂点Eureka服务器就好比CSDN网站,Eureka客户端就好比一个一个的用户

      很多人会有疑问问什么要使用Eureka 此处联想黑人问号?

        就拿上面的例子来说(前提:CSDN我们都在线,而且你也给了我你的住址信息),如果不使用CSDN我必须根据你提供的信息然后跋山涉水的才能找到你本人,而且如果突然哪天你搬家了然而并没有告诉我你的住址,然后就懵逼了...。有了CSDN不管你的信息怎么改变然后我就可以立马找到你和你进行发交流,询问你我想要的东西。

        用正式的语言解释:我们都在Eureka服务器注册服务一个名称,然后通过服务名称找到需要的服务,而不是通过固定的Ip地址进行访问调用服务。使用Ip地址缺点就是如果更换Ip岂不是到一个地方就要修改配置文件才能进行访问,如果一两个还好如果几十个呢?

        Ok,现在正式开始搭建Eureka服务

1、首先在pom.xml文件中导入依赖

  1. <dependency>
  2. <groupId>org.springframework.cloud</groupId>
  3. <artifactId>spring-cloud-starter-eureka-server</artifactId>
  4. <version>1.4.4.RELEASE</version>
  5. </dependency>
2、在Eureka服务服务启动类上加
@EnableEurekaServer

3、yml文件加入配置  注:

fetch-registry: false
register-with-eureka: false
必须设置否则会启动服务报错,fetch-registry 是否检索服务,register-with-eureka:将自己作为一个客户端
  1. server:
  2. port: 8761
  3. eureka:
  4. serviceUrl:
  5. #defaultZone: http://user:admin@localhost:8761/eureka
  6. defaultZone: http://localhost:8761/eureka
  7. client:
  8. fetch-registry: false
  9. register-with-eureka: false #eureka 既是服务者也是提供者 将自己作为一个客户端
  10. spring:
  11. application:
  12. name: microservice-discovery-eureka

4、将微服务注册到Eureka注册中心,Eureka客户端(因为使用了parent Pom文件所以这里没有选择版本)

  1. <dependency>
  2. <groupId>org.springframework.cloud</groupId>
  3. <artifactId>spring-cloud-starter-netflix-eureka-client</artifactId>
  4. </dependency>
5、在Eureka服务服务启动类上加入注解
@EnableDiscoveryClient  //或者@EnableEurekaClient

6、微服务yml文件增加配置

  1. eureka:
  2. client:
  3. serviceUrl:
  4. defaultZone: http://localhost:8761/eureka
  5. instance:
  6. instance-id: ${spring.application.name}:${spring.application.instance_id:${server.port}}}
  7. prefer-ip-address: true

defaultZone:默认注册EurekaServer地址

instance-id :Environment获取的默认应用程序名称(服务ID),虚拟主机和非安全端口分别为${spring.application.name}${spring.application.name}${server.port}

prefer-ip-address:显示ip地址

GitHub地址:https://github.com/mackjie/microservice-spring-cloud,请首先按照ReadMe步骤进行

因为里面已经结合了RabbitMQ,所以需要先安装RabbitMQ,数据库使用的是Mysql (否则回启动报错)

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/天景科技苑/article/detail/1016075
推荐阅读
相关标签
  

闽ICP备14008679号