${spring.application.instance_id: ${random.value}}}

server:

port: 8080

在上述配置中,spring.cloud.consul就是Consul 的基本配置,其中,host和 port 指定Consul注册中心的P和端口,即13.2.1节浏览器访问的地址; serviceName为客户端服务名; healthCheckPath为健康检查地址,本示例采用的是Actuator,因此指定为/actuator/health端点; healthCheckInterval为健康检查间隔时间,本示例为5秒,即每隔5秒会调用健康检查端点; instanceId 为实例服务,它是唯一的,服务发现都是通过instanceId来进行的。

(3)新建启动类(该类和前面介绍的启动类代码一致,此处略)。

(4)启动工程并访问localhost:8500,可以看到客户端被注册到Consul了,且每隔5秒会进行一次健康检查,如图13-3所示。

Spring Cloud ZooKeeper的使用

=========================

ZooKeeper是一个分布式的应用程序协调服务,是 Apache Hadoop 的一个子项目,最初主要是用于提供Hadoop和 HBase的调度服务,能够解决Hadoop中统一命名、配置维护、同步服务等问题。

在微服务流行以后,ZooKeeper开始被人们重视,大家发现通过ZooKeeper 也可以解决微服务中的服务治理问题。在比较流行的微服务框架中,Dubbo和 Spring Cloud都可以用ZooKeepr作为服务治理框架,尤其是 Dubbo,一般都是通过ZooKeeper实现服务治理的。

ZooKeeper的安装和部署

ZooKeeper的安装和部署也比较简单,首先从官网https://www-eu.apache.org/distzookeeper/stable中下载ZooKeeper的稳定版,然后解压进入ZooKeeper 根目录的conf 文件夹,可以看到一个名叫zoo_sample.cfg的文件,将其命名为zoo.cfg并返回上一级目录,最后进入 bin文件夹,双击zkServer.cmd文件,就可启动ZooKeeper。

ZooKeeper的默认启动端口为2181,我们可以通过修改zoo.cfg来修改启动端口,在zoo.cfg修改下面配置即可:

clientPort=2182

当然,除了修改默认端口外,我们还可以其他参数,表13-2列举了ZooKeeper的主要参数配置。

Spring Cloud集成ZooKeeper

Spring Cloud集成ZooKeeper的步骤如下。

(1)新建一个项目,命名为 spring-cloud-zookeeper,在其 pom.xml文件中添加如下代码:

org.springframework.boot

spring-boot-starter-parent< / artifactId>2.日.3.RELEASE

UTF-8

UTF-81.8

1.18.B

org.springframework.cloud

spring-cloud-dependenciesFinchley.RELEASE

pom

import

org.springframework.cloud

spring-cloud-starter-zookeeper-all

org.apache.zookeeperzookeeper< / artifactId>

org.apache.zookeeperzookeeper< / artifactId>

3.4.12

org.slf4j

slf4j- log4j12

< / dependency>

org.springframework.cloud

spring-cloud-starter-netflix-hystrix

org.springframework.boot

spring-boot-starter-web

其中, spring-cloud-starter-zookeeper-all为ZooKeeper服务的注册与发现依赖,我们可以发现,其内部通过标签将ZooKeeper依赖包去掉,在后面又通过标签添加ZooKeeper依赖。看似有点矛盾,其实不然,Spring Cloud 官方默认依赖的ZooKeeper版本是3.5.x,该版本目前为 beta@版本,而 3.4.x版本为稳定版,可以用于生产环境,因此我们需要手动添加3.4.x版本的ZooKeeper。

(2)创建应用入口类并编写启动代码。(具体代码可以参照前面Application类,本节不再列出。)

(3)新建配置文件application.yml并编写以下代码:

spring:

cloud:

zookeeper:

connect-string: localhost: 2181

connect-string指定了ZooKeeper的服务端端口,默认值为localhost:2181。

(4)启动应用程序,可以看到当前工程已注册到ZooKeeper,如图13-4所示。

自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。

深知大多数Java工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则几千的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!

因此收集整理了一份《2024年Java开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上Java开发知识点,真正体系化!

由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且会持续更新!

如果你觉得这些内容对你有帮助,可以扫码获取!!(备注Java获取)

技术学习总结

学习技术一定要制定一个明确的学习路线,这样才能高效的学习,不必要做无效功,既浪费时间又得不到什么效率,大家不妨按照我这份路线来学习。

最后面试分享

大家不妨直接在牛客和力扣上多刷题,同时,我也拿了一些面试题跟大家分享,也是从一些大佬那里获得的,大家不妨多刷刷题,为金九银十冲一波!

《一线大厂Java面试题解析+核心总结学习笔记+最新讲解视频+实战项目源码》,点击传送门即可获取! 同时,我也拿了一些面试题跟大家分享,也是从一些大佬那里获得的,大家不妨多刷刷题,为金九银十冲一波!

[外链图片转存中…(img-0z4ZRN1l-1712437676378)]

[外链图片转存中…(img-HBUhkkKm-1712437676379)]

《一线大厂Java面试题解析+核心总结学习笔记+最新讲解视频+实战项目源码》,点击传送门即可获取!

推荐阅读

评论可见,请评论后查看内容,谢谢!!!
 您阅读本篇文章共花了: