zoukankan      html  css  js  c++  java
  • springCloud的使用07-----消息总线(spring cloud bus)

    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%in路径添加到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:Usersyanglin.erlang.cookie文件,复制到C:windowsSystem32configsystemprofile目录下进行覆盖,重启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要单独写,不能直接在启动了类中写

          

             

          

  • 相关阅读:
    Django(25)WSGIRequest对象
    Django(24)永久重定向和临时重定向
    Django(23)Django限制请求装饰器
    Django(22)Django执行SQL语句
    Django(21)migrate报错的解决方案
    Django(20)ORM模型迁移命令
    Django(19)QuerySet API
    Django(18)聚合函数
    Django(17)orm查询操作
    数据结构-用队列实现栈
  • 原文地址:https://www.cnblogs.com/lifeone/p/9018964.html
Copyright © 2011-2022 走看看