spring cloud bus 将分布式的节点用轻量的消息代理连接起来。可用于广播配置文件的更改或服务之间的通讯,也可以用于监控。

spring cloud bus 默认只支持rabbitmq和kafka两个binder,也可以进行自己扩展。

1. 使用rabbitmq进行消息通讯

  1.1 下载安装rabbitmq

    1.1.1 rabbitmq依赖于Erlang,首先安装Erlang

      下载地址 http://www.erlang.org/downloads, 双击.exe文件进行安装,将%ERLANG_HOME%\bin路径添加到path中。

      在cmd中输入以下信息表示erlang安装成功

      

    1.1.2 下载安装rabbitmq

      下载地址http://www.rabbitmq.com/,双击.exe文件进行安装

    1.1.3 安装rabbitmq-plugins

      相当于一个管理界面,可以在浏览器中进行查看rabbitmq个消息队列以及exchange的工作情况。

      安装方式:在rabbitmq的安装目录下的sbin目录下,(以管理员身份运行)输入rabbitmq-plugins enable rabbitmq-management 稍等会提示plugins安装成功。

      如果报错按以下方式进行解决:rabbitmq-service stop   -> rabbitmq-service remove  -> rabbitmq-service install  -> rabbitmq-service start  -> rabbitmq-plugins enable rabbitmq-management

    1.1.4 在浏览器中查看 http://localhost:15672

      

    1.1.5 在sbin目录先运行 rabbitmqctl.bat status 命令,如果出现以下错误

      

      将C:\Users\yanglin\.erlang.cookie文件,复制到C:\windows\System32\config\systemprofile目录下进行覆盖,重启ribbitmq

      

    1.1.6 rabbitmq简单实用

      1.1.6.1 查看用户和角色 rabbitmqctl.bat list_uses

        

      1.1.6.2 增加用户 rabbitmqctl.bat add_user username password

        

        修改密码:rabbitmqctl.bat change_password username newPassword

        删除用户:rabbitmqctl.bat delete_user username

      1.1.6.3 给用户授权(设置角色) rabbitmqctl.bat set_user_tags username role1 [role2](可以同时授权多个角色)

         五大角色:超级管理员(adminstrator)、监控者(monitoring)、策略制定者(policymaker)、普通管理员(management)、其他的

超级管理员 可以登录控制台,查看所用的信息,并可对用户、策略进行操作
监控者   可以登录控制台,查看rabbitmq节点的相关信息(进程数,内存使用情况、磁盘使用情况)
策略制定者 可以登录控制台,可以对策略(policy)进行管理
普通管理者 可以登录控制台,无法看到节点信息,也无法对策略进行管理
其他的 无法登录控制台,普通的生产者和消费者

          

          设置用户权限 :rabbitmqctl.bat set_permissions -p VHostPath username ConfP WriteP ReadP

          查看(指定hostPath)所用用户的权限:rabbitmqctl.bat list_permissions [-p VHostPath]

          查看指定用户的权限信息:rabbitmqctl.bat list_user_permissions username

          清除用户的权限信息:rabbitmqctl.bat clear_permissions [-p VHostPath] username

  1.2 actuator的使用

    1.2.1 引入相应的依赖

<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-actuator</artifactId>
</dependency>

    1.2.2 在配置文件中配置/info请求的显示信息

spring:
application:
name: eureka-server #注册中心
info: #/info请求的显示信息
app:
name: ${spring.application.name}
version: 1.0.0
build:
artifactId: @project.artifactId@
version: @project.version@

    1.2.3 启动类要单独作为项目启动,所有的controller要单独写,不能直接在启动了类中写

      

        

      

springCloud的使用07-----消息总线(spring cloud bus)的更多相关文章

  1. 史上最简单的SpringCloud教程 | 第八篇: 消息总线(Spring Cloud Bus)

    转载请标明出处: 原文首发于:https://www.fangzhipeng.com/springcloud/2017/07/12/sc08-bus/ 本文出自方志朋的博客 最新Finchley版本请 ...

  2. 【SpringCloud 】第八篇: 消息总线(Spring Cloud Bus)

    前言: 必需学会SpringBoot基础知识 简介: spring cloud 为开发人员提供了快速构建分布式系统的一些工具,包括配置管理.服务发现.断路器.路由.微代理.事件总线.全局锁.决策竞选. ...

  3. 原 史上最简单的SpringCloud教程 | 第八篇: 消息总线(Spring Cloud Bus)(Finchley版本)

    转载请标明出处: 原文首发于:https://www.fangzhipeng.com/springcloud/2018/08/30/sc-f8-bus/ 本文出自方志朋的博客 转载请标明出处: Spr ...

  4. SpringCloud学习(八)消息总线(Spring Cloud Bus)(Finchley版本)

    Spring Cloud Bus 将分布式的节点用轻量的消息代理连接起来.它可以用于广播配置文件的更改或者服务之间的通讯,也可以用于监控.本文要讲述的是用Spring Cloud Bus实现通知微服务 ...

  5. SpringCloud教程 | 第八篇: 消息总线(Spring Cloud Bus)

    一.安装rabbitmq 二.pom父文件 <?xml version="1.0" encoding="UTF-8"?> <project x ...

  6. springCloud学习-消息总线(Spring Cloud Bus)

    1.简介 Spring Cloud Bus 将分布式的节点用轻量的消息代理连接起来.它可以用于广播配置文件的更改或者服务之间的通讯,也可以用于监控.本文要讲述的是用Spring Cloud Bus实现 ...

  7. SpringCloud 教程 (一) 消息总线(Spring Cloud Bus)

    Spring Cloud Bus 将分布式的节点用轻量的消息代理连接起来.它可以用于广播配置文件的更改或者服务之间的通讯,也可以用于监控.本文要讲述的是用Spring Cloud Bus实现通知微服务 ...

  8. 通过消息总线Spring Cloud Bus实现配置文件刷新(使用Kafka或RocketMQ)

    如果需要客户端获取到最新的配置信息需要执行refresh,我们可以利用webhook的机制每次提交代码发送请求来刷新客户端,当客户端越来越多的时候,需要每个客户端都执行一遍,这种方案就不太适合了.使用 ...

  9. 一起来学Spring Cloud | 第八章:消息总线(Spring Cloud Bus)

    上一章节,我们讲解了分布式配置中心spring cloud config,我们把配置项存放在git或者本地,当我们修改配置时,需要重新启动服务才能生效.但是在生产上,一个服务部署了多台机器,重新启动比 ...

  10. 第七篇: 消息总线(Spring Cloud Bus)

    Spring Cloud Bus 将分布式的节点用轻量的消息代理连接起来.它可以用于广播配置文件的更改或者服务之间的通讯,也可以用于监控.本文要讲述的是用Spring Cloud Bus实现通知微服务 ...

随机推荐

  1. JS-02 一元运算符理解

    <script> var i=1; j=i++ + i++; console.log(j); //结果是3 console.log(i); //结果是3 </script> 代 ...

  2. UIView与CALayer 区别

    在iOS中,你能看得见摸得着的东西基本上都是UIView,比如一个按钮.一个文本标签.一个文本输入框.一个图标等等,这些都是UIView. 其实UIView之所以能显示在屏幕上,完全是因为它内部的一个 ...

  3. day04 列表增删改查、元祖以及range

    01 课前小甜点 千万不要随意做决定 只要你做了决定,你要坚持下去. 02 昨日内容回顾 int <---> bool : 非0 True 0 False True 1 False 0 i ...

  4. JAVA中位数排序

    package quickSort; public class QuickSort { private static int count; /** * 测试 * @param args */ publ ...

  5. vue tab切换布局

    页面 功能 点击tab1和tab2,content内容切换content1和content2 <template> <div> <div class="tab& ...

  6. B/S架构和C/S架构介绍

    一.C/S架构 C/S架构及其背景 C/S架构是一种比较早的软件架构,主要应用于局域网内.在这之前经历了集中计算模式,随着计算机网络的进步与发展,尤其是可视化工具的应用,出现过两层C/S和三层C/S架 ...

  7. SVN查看所有人的日志提交记录

    1. svn默认显示最近一周的文件提交和修改记录,怎么查看更长时间的日志记录呢? 2. TortoiseSVN 3. 点击show all 或者NEXT 100,就可显示更长时间的文件提交记录.

  8. list去重方法

    list去重 方法1:利用循环去重 s= [1,1,2,2,2,3,4,4] res= [] for i in s: if i not in res: res.append(i) print(res) ...

  9. centos7安装完成之后必要的配置

    一配置yum源 curl -o /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo wget ...

  10. MySQL执行计划之EXPLAIN基本解释说明

    一.EXPLAIN使用潜规则 explain + sql语句 例如: EXPLAIN SELECT * FROM `t_user`; 二. 表头字段详解 (1) id-----> 表的读取顺序 ...