当前位置: 首页 > news >正文

苏州吴中网站建设公司建设项目备案网站管理系统

苏州吴中网站建设公司,建设项目备案网站管理系统,酒店家具网站源码,厦门网站建设那家好文章目录 前言一、数据隔离1.用户管理2.virtual host 二、控制台收发1.交换机2.队列3.绑定 三、编程式收发1.依赖和配置2.收发信息 总结 前言 1.了解数据隔离 2.RabbitMQ控制台收发信息 3.SpringBoot整合RabbitMQ收发信息 一、数据隔离 1.用户管理 点击Admin选项卡#xff0… 文章目录 前言一、数据隔离1.用户管理2.virtual host 二、控制台收发1.交换机2.队列3.绑定 三、编程式收发1.依赖和配置2.收发信息 总结 前言 1.了解数据隔离 2.RabbitMQ控制台收发信息 3.SpringBoot整合RabbitMQ收发信息 一、数据隔离 1.用户管理 点击Admin选项卡首先会看到RabbitMQ控制台的用户管理界面 这里的用户都是RabbitMQ的管理或运维人员。仔细观察用户表格中的字段如下 Nameitheima也就是用户名Tagsadministrator说明itheima用户是超级管理员拥有所有权限Can access virtual host /可以访问的virtual host这里的/是默认的virtual host 对于小型企业而言出于成本考虑我们通常只会搭建一套MQ集群公司内的多个不同项目同时使用。这个时候为了避免互相干扰 我们会利用virtual host的隔离特性将不同项目隔离。一般会做两件事情 给每个项目创建独立的运维账号将管理权限分离。给每个项目创建不同的virtual host将每个项目的数据隔离。 比如我们给自己项目创建一个新的用户命名为dragon权限为admin 2.virtual host 创建完用户你会发现你的用户是这样 别急需要授权为你创建的用户绑定管理的虚拟机。登录你刚才创建的用户。 /代表默认虚拟机我们可以给自己的项目创建一个单独的virtual host而不是使用默认的/。 由于我们是登录dragon账户后创建的virtual host因此回到users菜单你会发现当前用户已经具备了对/dragon这个virtual host的访问权限了 如果你以前在默认的用户或者你创建的其他用户创建了队列交换机你可以看到全部没有这就是隔离效果互不干扰。就在当前用户当前绑定授权的虚拟机操作。 二、控制台收发 如果RabbitMQ安装有问题可以看我文章Docker中的快速安装RaabbitMQ 1.交换机 点击Exchanges选项卡可以看出很多交换机 我们点击任意交换机即可进入交换机详情页面。仍然会利用控制台中的publish message 发送一条消息 这里是由控制台模拟了生产者发送的消息这里的生产者就是交换机可以看到拒绝了这样说明交换机没有存储消息的能力由于没有消费者存在最终消息丢失了。交换机只负责路由分发消息所以我们创建队列也就是消费者来处理接收消息让交换机生产者有分发消息的对象。 2.队列 我们打开Queues选项卡新建一个队列:hello.queue1、hello.queue2 此时我们再次向amq.fanout交换机发送一条消息。会发现消息依然没有到达队列 怎么回事呢 发送到交换机的消息只会路由到与其绑定的队列因此仅仅创建队列是不够的我们还需要将其与交换机绑定。 3.绑定 点击Exchanges选项卡点击amq.fanout交换机进入交换机详情页然后点击Bindings菜单在表单中填写要绑定的队列名称 再次进入绑定队列的交换机内发送信息回到Queues页面可以发现hello.queue中已经有一条消息了 点击队列名称进入详情页查看队列详情这次我们点击get message可以看到信息了 三、编程式收发 将来我们开发业务功能的时候肯定不会在控制台收发消息而是应该基于编程的方式。由于RabbitMQ采用了AMQP协议因此它具备跨语言的特性。任何语言只要遵循AMQP协议收发消息都可以与RabbitMQ交互。并且RabbitMQ官方也提供了各种不同语言的客户端。但是RabbitMQ官方提供的Java客户端编码相对复杂一般生产环境下我们更多会结合Spring来使用。而Spring的官方刚好基于RabbitMQ提供了这样一套消息收发的模板工具SpringAMQP。并且还基于SpringBoot对其实现了自动装配使用起来非常方便。SpringAMQP提供了三个功能 自动声明队列、交换机及其绑定关系基于注解的监听器模式异步接收消息封装了RabbitTemplate工具用于发送消息 1.依赖和配置 parentgroupIdorg.springframework.boot/groupIdartifactIdspring-boot-starter-parent/artifactIdversion2.7.12/versionrelativePath//parentpropertiesmaven.compiler.source8/maven.compiler.sourcemaven.compiler.target8/maven.compiler.target/propertiesdependenciesdependencygroupIdorg.projectlombok/groupIdartifactIdlombok/artifactId/dependency!--AMQP依赖包含RabbitMQ--dependencygroupIdorg.springframework.boot/groupIdartifactIdspring-boot-starter-amqp/artifactId/dependency!--单元测试--dependencygroupIdorg.springframework.boot/groupIdartifactIdspring-boot-starter-test/artifactId/dependency/dependenciesspring:rabbitmq:host: 192.168.198.148 # 你的虚拟机IPport: 5673 # 端口virtual-host: /dragon # 虚拟主机username: dragon # 用户名password: 123 # 密码2.收发信息 这里是创建两个springboot项目在途中pom.xml文件粘贴依赖在这两个项目内的application.yaml粘贴配置。并且我在控制台也已经手动创建simple.queue队列。 接收消息 随便创建个类写如下代码 Component public class SpringRabbitListener {// 利用RabbitListener来声明要监听的队列信息// 将来一旦监听的队列中有了消息就会推送给当前服务调用当前方法处理消息。// 可以看到方法体中接收的就是消息体的内容RabbitListener(queues simple.queue)//队列名public void listenSimpleQueueMessage(String msg) throws InterruptedException {System.out.println(spring 消费者接收到消息【 msg 】);} }发送消息 在publisher项目的测试类里写如下代码 SpringBootTest public class SpringAmqpTest {Resourceprivate RabbitTemplate rabbitTemplate;Testpublic void testSimpleQueue() {// 队列名称String queueName simple.queue;// 消息String message hello, spring amqp!;// 发送消息rabbitTemplate.convertAndSend(queueName, message);} }先运行consumer项目的启动类再运行测试类发送信息就可以看到在consumer项目控制台接收信息了。 总结 以上就是简单的消息收发具体的编程化创建虚拟机队列以及收发信息我会在讲解交换机的文章中讲解。
http://www.pierceye.com/news/388630/

相关文章:

  • 网站建设需要钱吗开发一个小程序流程
  • 通州富阳网站建设做足彩网站推广
  • 一个公司做网站需要注意什么条件车之家汽车官网
  • 石家庄网站建设网站建设网站的制作哪家好
  • 苏州晶体公司网站网站排名优化各公司的
  • 网站开发大致多少钱团队拓展训练
  • p2p网站建设方案卫龙模仿iphone做网站
  • 做盗版电影网站犯法吗Wordpress 淘宝客 页面
  • 自己做网站费用html5结构的网站
  • wordpress做资源分享站做网站的图哪来
  • 国外设计欣赏网站线上建模培训班哪个好
  • 微信网站建设合同怎么在本地搭建网站
  • 班级网站怎么做网页制作临沂网站制作方案
  • 泰州网站建设服务好wordpress调用分类名
  • 中英切换的网站咋做怎样在网站做推广
  • 初学网站开发书籍如何提升网站打开速度
  • 深圳微信网站建设公司哪家好网站 维护 页面
  • 做个企业网站需要多少钱北京西站到大兴机场
  • 数字博物馆网站建设动态设计是什么意思
  • 沧州市做网站价格wordpress构建自己的网站
  • seo外链网站源码新公司注册核名
  • 游戏网站建设的策划方案python做电子商务网站
  • pxhere素材网站网上搞钱的野路子
  • 有没有帮人做数学题的网站9377游戏盒子
  • 微信网站建设报价网站优化提升排名
  • wap网站分享代码自定义网站建设
  • 网站换域名了怎么办seo百度帐号注册
  • 淄博网站建设公司羊肉片机网站模板制作
  • 邯郸网站设计价位南京h5 网站建设
  • wordpress主要函数seo是哪个英文的缩写