壹
本章继续(二),记录关于Eureka的Client 注册服务,已经完成了注册中心,注册中心之后的改动比较小,几乎都不怎么去动他,就不用再开一个IDEA去运行他,在于我的机子也比较烂,陪了我好多年了,直接打包,cmd窗口命令运行他就好了,后面用IDEA去创建Client即可.
贰
打开CMD 进入Server项目文件, cd E:\MyCloud\eureka
执行命令 mvn clean package 第一次执行会比较久,等他执行完了,就OK了
其中有这么一段信息,告诉我们包的地址,已经在E:/MyCloud/eureka目录下,
运行命令: java -jar target/eureka-0.0.1-SNAPSHOT.jar
运行方式很多,可以参考: https://my.oschina.net/u/3829444/blog/1830794
叁
利用IDEA的Spring Initializr构建一个SpringBoot项目,第一步
第二步,选择Cloud Discovery-Eureka Discovery, 顺便把web也勾上
并且SpringBoot版本2.0.3,昨天还是2.0.2,变化的很快
第三步,选择我的创建路径目录E:/MyCloud
第四步,创建好了,把不需要的文件删除掉,没用
为了不出现一些莫名其妙的问题,先将pom.xml中的版本号,改成和Eureka Server的版本一致
使用2.0.3 ,在(二)篇中server是2.0.2,改成2.0.3,还有SpringCloud的版本也需要注意一下, 如果一致的话,就忽悠这步
提示 server 必须开启
第五步:在启动类上标注此应用是一个Client应用,加上注解,如下
第六步: 在application.yml 中配置,如下
spring: application: name: myclient
eureka: client: service-url: defaultZone: http://localhost:8761/eureka/
如果遇到了client启动一半就断掉了,请在pom.xml中加入web依赖,如下
启动成功,访问 服务中心, 展示,发现一个服务,就是myclient
status就是client 访问的地址,也就是我的IP地址了,点击访问,就到了client端了
有的时候,注册中心会出现一段警告
EMERGENCY! EUREKA MAY BE INCORRECTLY CLAIMING INSTANCES ARE UP WHEN THEY'RE NOT. RENEWALS ARE LESSER THAN THRESHOLD AND HENCE THE INSTANCES ARE NOT BEING EXPIRED JUST TO BE SAFE.
这是server端自我检测,自我保护模式,在开发的时候,可以关闭,就当做没有这回事,不然看到红字就敏感
在server端,yml中添加enable-self-preservation=false 配置,如下,
server: port: 8761
spring: application: name: my first eureka
eureka: client: service-url: defaultZone: http://localhost:8761/eureka/ register-with-eureka: false server: enable-self-preservation: false
重启后,就不会出现警告了,但是出现了另一段红字,反正别管他就好了,心静自然凉
注意开发环境可以这么配,为了省心,其他环境请不要使用.
关于client心跳补充点学习配置:
eureka:
instance:
lease-renewal-interval-in-second: 5 ---每隔5s心跳一次,证明本服务还活着
lease-expiration-duration-in-second: 10 ---本服务10s内没有心跳,就将该服务从服务端剔除
--------------------------------------------------------