返回顶部
首页 > 资讯 > 精选 >java怎么配置中心和消息总线
  • 417
分享到

java怎么配置中心和消息总线

2023-06-05 05:06:15 417人浏览 安东尼
摘要

这篇文章主要介绍“java怎么配置中心和消息总线”,在日常操作中,相信很多人在java怎么配置中心和消息总线问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”java怎么配置中心和消息总线”的疑惑有所帮助!接下来

这篇文章主要介绍“java怎么配置中心和消息总线”,在日常操作中,相信很多人在java怎么配置中心和消息总线问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”java怎么配置中心和消息总线”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!

spring cloud Bus

spring cloud bus通过轻量消息代理连接各个分布的节点。这会用在广播状态的变化(例如配置变化)或者其他的消息指令。Spring bus的一个核心思想是通过分布式的启动器对Spring Boot应用进行扩展,也可以用来建立一个多个应用之间的通信频道。目前唯一实现的方式是用AMQP消息代理作为通道,同样特性的设置(有些取决于通道的设置)在更多通道的文档中。

Spring cloud bus被国内很多都翻译为消息总线,也挺形象的。大家可以将它理解为管理和传播所有分布式项目中的消息既可,其实本质是利用了MQ的广播机制在分布式的系统中传播消息,目前常用的有kafkaRabbitMQ。利用bus的机制可以做很多的事情,其中配置中心客户端刷新就是典型的应用场景之一,我们用一张图来描述bus在配置中心使用的机制。

java怎么配置中心和消息总线

根据此图我们可以看出利用Spring Cloud Bus做配置更新的步骤:

提交代码触发post给客户端A发送bus/refresh

客户端A接收到请求从Server端更新配置并且发送给Spring Cloud Bus

Spring Cloud bus接到消息并通知给其它客户端

其它客户端接收到通知,请求Server端获取最新配置

全部客户端均获取到最新的配置

项目示例

客户端spring-cloud-config-client改造

添加依赖

<dependency>    <groupId>org.springframework.cloud</groupId>    <artifactId>spring-cloud-starter-bus-amqp</artifactId></dependency>

需要多引入spring-cloud-starter-bus-amqp包,增加对消息总线的支持

配置文件

## 刷新时,关闭安全验证management.security.enabled=false## 开启消息跟踪spring.cloud.bus.trace.enabled=true spring.rabbitmq.host=192.168.9.89spring.rabbitmq.port=5672spring.rabbitmq.username=adminspring.rabbitmq.passWord=123456

配置文件需要增加RebbitMq的相关配置,这样客户端代码就改造完成了。

测试

依次启动spring-cloud-eureka、spring-cloud-config-server、spring-cloud-config-client项目,在启动spring-cloud-config-client项目的时候我们会发现启动日志会输出这样的一条记录。

2017-05-26 17:05:38.568  INFO 21924 --- [           main] o.s.b.a.e.mvc.EndpointHandlerMapping     : Mapped "{[/bus/refresh],methods=[POST]}" onto public void org.springframework.cloud.bus.endpoint.RefreshBusEndpoint.refresh(java.lang.String)

说明客户端已经具备了消息总线通知的能力了,为了更好的模拟消息总线的效果,我们更改客户端spring-cloud-config-client项目的端口为8003、8004依次启动,这样测试环境就准备好了。启动后eureka后台效果图如下:

java怎么配置中心和消息总线

我们先分别测试一下服务端和客户端是否正确运行,访问:Http://localhost:8001/neo-config/dev,返回信息:

{    "name": "neo-config",     "profiles": [        "dev"    ],     "label": null,     "version": null,     "state": null,     "propertySources": [        {            "name": "https://GitHub.com/ityouknow/spring-cloud-starter/config-repo/neo-config-dev.properties",             "source": {                "neo.hello": "hello im dev"            }        }    ]}

说明server端都正常读取到了配置信息。

依次访问:http://localhost:8002/hello、http://localhost:8003/hello、http://localhost:8004/hello,返回:hello im dev。说明客户端都已经读取到了server端的内容。

现在我们更新neo-config-dev.properties 中neo.hello的值为hello im dev update并提交到代码库中,访问:http://localhost:8002/hello 依然返回hello im dev。我们对端口为8002的客户端发送一个/bus/refresh的post请求。在win下使用下面命令来模拟WEBhook.

curl -X POST http://localhost:8002/bus/refresh

执行完成后,依次访问:http://localhost:8002/hello、http://localhost:8003/hello、http://localhost:8004/hello,返回:hello im dev update。说明三个客户端均已经拿到了最新配置文件的信息,这样我们就实现了图一中的示例。

到此,关于“java怎么配置中心和消息总线”的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注编程网网站,小编会继续努力为大家带来更多实用的文章!

--结束END--

本文标题: java怎么配置中心和消息总线

本文链接: https://lsjlt.com/news/241359.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • java怎么配置中心和消息总线
    这篇文章主要介绍“java怎么配置中心和消息总线”,在日常操作中,相信很多人在java怎么配置中心和消息总线问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”java怎么配置中心和消息总线”的疑惑有所帮助!接下来...
    99+
    2023-06-05
  • java怎么配置中心服务化和高可用
    这篇文章主要介绍“java怎么配置中心服务化和高可用”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“java怎么配置中心服务化和高可用”文章能帮助大家解决问题。客户端和服务端的耦合性太高,如果serv...
    99+
    2023-06-05
  • 基于kafka怎么实现Spring Cloud Bus消息总线
    这篇文章主要介绍“基于kafka怎么实现Spring Cloud Bus消息总线”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“基于kafka怎么实现Spring Clo...
    99+
    2023-06-30
  • redis消息监听事件怎么配置
    要配置Redis消息监听事件,您可以按照以下步骤进行操作:1. 创建一个Redis连接实例,代码示例如下:```javaJedis ...
    99+
    2023-09-01
    redis
  • 消息驱动Spring Cloud Stream怎么配置
    本篇内容主要讲解“消息驱动Spring Cloud Stream怎么配置”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“消息驱动Spring Cloud Stream怎么配置”吧!在使用sprin...
    99+
    2023-06-05
  • java中的消息队列怎么利用多线程实现
    java中的消息队列怎么利用多线程实现?相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。定义一个队列缓存池: //static修饰的成员变量和成员方法独立于该类的任何对象...
    99+
    2023-05-31
    java 多线程 ava
  • 怎么在微信小程序中配置消息推送
    这篇文章将为大家详细讲解有关怎么在微信小程序中配置消息推送,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。第一步官网下载对应版本的cryptoDemo第二步创建检查文件wxcheck.php这...
    99+
    2023-06-14
  • Vue组件中事件总线和消息发布订阅的示例分析
    小编给大家分享一下Vue组件中事件总线和消息发布订阅的示例分析,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!简介主要介绍事件总线的定义和编写方法和Vue是如何实现...
    99+
    2023-06-29
  • win10中怎么设置消息免打扰
    这篇文章主要介绍了win10中怎么设置消息免打扰,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。Win10设置消息免打扰的具体步骤:首先按组合键“win+r”打开运行,然后输入...
    99+
    2023-06-27
  • 怎么运用Spring4+ZooKeeper配置中心
    本篇内容介绍了“怎么运用Spring4+ZooKeeper配置中心”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!一:ZooKeeper 连接...
    99+
    2023-06-04
  • java 中怎么配置Socket多线程客户端
    java 中怎么配置Socket多线程客户端,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。static class Sender ...
    99+
    2023-06-17
  • kafka中的消息分区分配算法怎么用
    本文小编为大家详细介绍“kafka中的消息分区分配算法怎么用”,内容详细,步骤清晰,细节处理妥当,希望这篇“kafka中的消息分区分配算法怎么用”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。背景kafka有分区机...
    99+
    2023-06-30
  • SpringBoot怎么集成Nacos实现注册中心与配置中心
    这篇文章主要介绍“SpringBoot怎么集成Nacos实现注册中心与配置中心”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“SpringBoot怎么集成Nacos实现注册中心与配置中心”文章能帮助大...
    99+
    2023-07-05
  • 怎么在SpringCloud中将Zookeeper作为配置中心
    本篇文章给大家分享的是有关怎么在SpringCloud中将Zookeeper作为配置中心,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。相关依赖<xml vers...
    99+
    2023-06-14
  • Cassandra怎么配置跨数据中心复制
    要配置Cassandra的跨数据中心复制,需要在cassandra.yaml配置文件中进行一些设置。以下是配置跨数据中心复制的步骤:...
    99+
    2024-04-09
    Cassandra
  • java中怎么配置vscode
    这篇文章主要介绍java中怎么配置vscode,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!vscode有什么用Visual Studio Code 是一个运行于 OS X,Windows和 Linux 之上的,针对...
    99+
    2023-06-14
  • Linux中怎么配置无线网络
    这篇文章主要为大家展示了“Linux中怎么配置无线网络”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“Linux中怎么配置无线网络”这篇文章吧。1. 安装 wireless_tools 和 mad...
    99+
    2023-06-28
  • Tomcat中的线程池怎么配置
    在Tomcat中配置线程池需要编辑server.xml文件。以下是配置线程池的步骤: 打开Tomcat安装目录下的conf文件夹...
    99+
    2024-04-03
    Tomcat
  • springboot bootstrap.yml nacos配置中心问题怎么解决
    这篇“springboot bootstrap.yml nacos配置中心问题怎么解决”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收...
    99+
    2023-07-05
  • Java中间件怎么配置
    配置Java中间件通常包括以下几个步骤: 下载并安装中间件:根据需要选择合适的中间件,比如Apache Tomcat、JBoss...
    99+
    2023-10-25
    Java
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作