破甲两千六 Spring Cloud 教程(三):添加Spring Cloud 的 Netflix Eureka 插件,实现服务端、客户端的发现与注册
写在前面:
Spring Cloud 为开发人员提供了快速构建分布式系统的一些工具,包括配置管理、服务发现、断路器、路由、微代理、事件总线、全局锁、决策竞选、分布式会话等等。
5大常用组件:
服务发现——Netflix Eureka
客服端负载均衡——Netflix Ribbon
断路器——Netflix Hystrix
服务网关——Netflix Zuul
分布式配置——Spring Cloud Config
其中 服务发现——Netflix Eureka,可以将客户端(注册端)注册到服务端(被注册端),并在Eureka提供的服务端管理页面,可以看到注册在其上的各个客户端的状态,或者通过客户端yml文件中的配置查看客户端指定信息。
下面开始向Spring Cloud 添加Netflix Eureka,实现服务端、客户端的发现与注册,以下操作是在Spring Cloud 教程(二)的基础上继续的,当然你也可以新建项目,新建项目可参考Spring Cloud 教程(一)。
本文结尾处会附上git代码。
配置 Eureka Server 端
如果要新建项目,在选择插件时,要按下图选择,如果是这样那可以直接跳过 1,2 操作3了,因为pom文件直接都给你集成好了,本人由于是从一个光秃秃的spring boot 开始的,所以要通过1 和 2进行配置pom
1.修改pom.xml ,配置Spring Cloud 及 Netflix Eureka依赖 :
配置Spring Cloud :
第一步,添加SpringCloud版本:<spring-cloud.version>Greenwich.SR2</spring-cloud.version>
第二步:配置SpringCloud最新稳定版本依赖,添加到图中位置:
<!--配置SpringCloud最新稳定版本依赖--><dependencyManagement><dependencies><dependency><groupId>org.springframework.cloud</groupId><artifactId>spring-cloud-dependencies</artifactId><version>${spring-cloud.version}</version><type>pom</type><scope>import</scope></dependency></dependencies></dependencyManagement>
2.添加Netflix Eureka依赖(节省点篇幅,不截图了):
<dependency><groupId>org.springframework.cloud</groupId><artifactId>spring-cloud-starter-netflix-eureka-server</artifactId></dependency>
3.在启动文件 内添加标签 @EnableEurekaServer:表示这是一个Server端
4.配置yml文件:
#配置EurekaServer
# 服务名称
spring:application:name: spring-cloud-eureka-server
# 服务端口号
server:port: 8080#Eureka 相关配置
eureka:client:service-url:defaultZone: http://localhost:${server.port}/eureka/# 是否从其他的服务中心同步服务列表。fetch-registry: false# 是否把自己作为服务注册到其他服务注册中心,register-with-eureka: false
5.启动项目,访问http://localhost:8080/,进入到Netflix Eureka的管理页面,注册列表是空的,接下来需要建立一个客户端,并注册到这个服务端上。
配置 Eureka Client 端
1.这次可以直接带有插件新建了,注意新建的是客户端,所以在新建时应选择
2.待初始化完成在新窗口打开,添加application.yml:
# 服务提供者端口号
server:port: 8081# 配置Eureka Server 信息
eureka:client:service-url:defaultZone: http://localhost:8080/eureka/# 自定义实例编号instance:instance-id: ${spring.application.name}:${server.port}:@project.version@
3.启动项目,访问http://localhost:8080/,若已在此页面请刷新,可以看到:注册列表已经出现了客户端,这说明你已经成功的将客户端注册到服务端了。
4.但是点击上图红框内的客户编号,会发现打开是报错的 浏览器的地址显示的是 :http://desktop-sjscmge:8081/actuator/info,说明确实是访问到了服务端,但是没有actuator/info 这个接口。所以接下来 需要在yml文件中配置:
在pom 中加入 actuator监控依赖:
<!-- actuator监控信息完善,用于服务端调用 --><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-actuator</artifactId></dependency>
在yml 加入 actuator配置:
#暴露所有端点 默认是info,health
management:endpoints:web:exposure:include: "*"
重启项目,刷新服务端Eureka 页面,再次点击链接,不会报错了,但是显示:{},这是因为默认的actuator/info接口显示的是自定义的信息,换句话说,咱们并没有在yml文件中对actuator/info的内容进行自定义。但是,除info接口外,还有其他接口供查看客户端信息已经可以使用,常用接口如下 ,调用方法为:http://desktop-sjscmge:8081/actuator/接口名。
(转 作者:myCat 原文:https://blog.csdn.net/WYA1993/article/details/80540981)下面是对部分常用端点的简要说明
auditevents 公开当前应用程序的审计事件信息。
beans 显示应用程序中所有Spring bean的完整列表。
configprops 显示应用中配置的属性信息报告。
env 显示应用中所有可用的环境属性报告,包括环境变量、JVM属性、应用的配置属性、命令行的参数。
health 显示应用健康信息。
httptrace 显示HTTP跟踪信息(默认情况下为最后100个HTTP请求 - 响应交换)。
info 显示应用的自定义信息,默认是空。
metrics 显示当前应用程序的“指标”信息,如内存信息、线程信息。
mappings 显示所有url映射。
scheduledtasks 显示应用程序中的计划任务。
shutdown 让应用程序正常关机。
详细说明请查看actuator-api文档:https://docs.spring.io/spring-boot/docs/current/actuator-api/html/
(/转)
建议大家去看一下这篇博文 讲的比较具体。
回过头来说配置 info 端点:
info:
app:
version: 1.1
name: aut #/actuator/info 自定义的info端点 否则是空的
此时大家再去试一下 ,会显示出自定义的信息了。
至此 添加Spring Cloud 的 Netflix Eureka 插件 实现服务端、客户端的发现与注册 已告一段落了。
git地址
- 服务端 demo2:https://github.com/HappyHappyWen/demo2.git
- 客户端 demo4:https://github.com/HappyHappyWen/demo4.git
一剑破甲两千六:
广陵江一战,短短两里路程,在李淳罡剑下躺了两千六百具背魁骑兵尸体,层层叠叠,少有完整的尸体。八月十月日,徐凤年虽未亲手杀人,却是第一次感到恐惧,因为剑术无匹的李淳罡每多杀一人,他的性命就要多一分可能性留在广陵江喂鱼,人力终有竭尽时,徐凤年低头看着双手,颤抖不止,如何都停不下来。这里头有一丝躁动的畸形兴奋,亲眼所见李淳罡剑气所及,锋芒掠过,便是一大片血肉模糊,试问自己练刀,此生何时能有这种以一介武夫力敌千军万马的本事?老人在官道上负手缓行,背影伛偻,百步以后,似乎知道世子殿下在目送,没有转身,挥了挥手。
徐凤年伸手遮了遮夕阳光线,紧抿起嘴唇。
木马牛。酆都绿袍。剑神。
大雪坪一声剑来。武帝城剑开天门。广陵江斩杀两千六百骑。
还有那身穿羊皮裘的扣脚独臂老汉。
都已是江湖一缕余晖。
徐凤年喃喃道:“一个人就能让整座江湖都觉着老了,可真是一件霸气无匹的技术活儿,老前辈,本世子没法子打赏啊。”
破甲两千六 Spring Cloud 教程(三):添加Spring Cloud 的 Netflix Eureka 插件,实现服务端、客户端的发现与注册相关推荐
- 侠义道服务器修改,[侠义道1]1.85虚拟机镜像一键启动服务端+客户端+启动教程+元宝修改...
[侠义道1]1.85虚拟机镜像一键启动服务端+客户端+启动教程+元宝修改 资源说明: 1.本资源为侠义道Online1.85版本,默认IP为192.168.200.175,虚拟机架设,默认使用NAT模 ...
- spring cloud教程之使用spring boot创建一个应用
<7天学会spring cloud>第一天,熟悉spring boot,并使用spring boot创建一个应用. Spring Boot是Spring团队推出的新框架,它所使用的核心技术 ...
- Spring Boot教程(十三):Spring Boot文件上传
分享一个零基础,通俗易懂,而且非常风趣幽默的人工智能教程(如不能直接点击访问,请以"右键"->"在新标签页中打开链接"方式打开)网站,网址:https:/ ...
- Spring实战(三)Spring中装配Bean的三种方式---XML、JavaConfig、AutoWire
创建应用对象之间协作关系的行为称为装配(wiring),这也是依赖注入的本质. Spring容器负责创建应用程序中的bean并通过DI来协调这些对象之间的关系,而开发者需要告诉Spring需要创建哪些 ...
- Spring学习(三)--Spring的IOC
1.BeanFactory和FactoryBean BeanFactory是一个接口类,定义了IOC容器最基本的形式,提供了IOC容器所应该遵守的基本服务契约. FactoryBean是一个能产生或者 ...
- Spring框架:三种Spring Bean生命周期技术
当使用术语"生命周期"时,Spring的家伙指的是您的bean的构造和破坏,通常这与Spring Context的构造和破坏有关. 在某些情况下,Bean生命周期的管理不是一件容易 ...
- Spring框架(三)---Spring的初衷,目标,基本组成
Spring的初衷 1.JAVA EE开始应该更加简单. 2.使用接口而不是使用类,是更好的编程习惯.Spring将使用接口的复杂度几乎降低到了零. 3.为JavaBean提供了一个更好的应用配置框架 ...
- 【Spring】第三课 Spring框架搭建MVC三层架构
概念 本文对Spring框架在项目的实际应用和搭建项目框架中的作用和应用的介绍. 1.搭建项目开发环境 本文连接的数据库是mydb,采用的表是account,银行账户信息的数据表,如果读者对该表的结构 ...
- WebSocket 从入门到精通 -- Spring boot服务端客户端 -- HTML客户端
注意:学习本文章一定要打开自己的开发工具,代码中有详细的解释.电脑不在身边建议先收藏,方便日后观看.最后祝大家技术突飞猛进,早日拿到心仪的offer. WebSocket -- 从入门到精通 基础讲解 ...
最新文章
- 树莓派安装python3.5+tensorflow_树莓派4B安装Tensorflow的方法步骤
- 网易2017校招编程:计算糖果
- Windows原生运行Linux的技术细节
- 【.Net Micro Framework PortingKit - 03】调试初步:点亮LED灯
- Java是否为回文_java语言判断一个数字是否为回文数字
- 转 java中static{}语句块详解
- python 基本数据类型
- 记住看小电影前一定要检查网址是不是 HTTPS 的,不然…
- python自学多久-python自学多久
- 电流感应放大器应用技术要点
- 实现个人域名跳转指定网站
- 【沃顿商学院学习笔记】宏观经济学——03国际移民与城市发展Immigration and Cities
- [MOOC]物联网技术笔记-2.物联网的概念和特征
- 【BIT2021程设】7. 一夜发白《千字文》——Unicode和UTF-8、位运算
- Hash函数与算法、哈希查找、哈希冲突解决方法总结
- Spring源码分析之TDDL
- [转]信息安全相关理论题(三)
- 入耳式蓝牙耳机哪个牌子好用?四款高品质音乐游戏耳机
- ## 2048/简易/欢迎提出建议
- OCR识别-发票扫描仪