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

徐州网站建设网站点击量与排名

徐州网站建设,网站点击量与排名,黑色系 网站,淄博网站建设服务1、简介 MQ,中文是消息中间件(队列)(MessageQueue),字面来看就是存放消息的队列。也就是事件驱动架构中的Broker。 简单来说,消息中间件就是指保存数据的一个容器(服务器),可以用于两个系统之间的数据传递。 几种常见MQ的对比: RabbitMQActiveMQRocketMQKafka公司…

1、简介

MQ,中文是消息中间件(队列)(MessageQueue),字面来看就是存放消息的队列。也就是事件驱动架构中的Broker。
简单来说,消息中间件就是指保存数据的一个容器(服务器),可以用于两个系统之间的数据传递。

几种常见MQ的对比:

RabbitMQActiveMQRocketMQKafka
公司/社区RabbitApache阿里Apache
开发语言ErlangJavaJavaScala&Java
协议支持AMQP,XMPP,SMTP,STOMPOpenWire,STOMP,REST,XMPP,AMQP自定义协议自定义协议
可用性一般
单机吞吐量一般非常高
消息延迟微秒级毫秒级毫秒级毫秒以内
消息可靠性一般一般

追求可用性:Kafka、 RocketMQ 、RabbitMQ

追求可靠性:RabbitMQ、RocketMQ

追求吞吐能力:RocketMQ、Kafka

追求消息低延迟:RabbitMQ、Kafka

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

RabbitMQ是一个广泛使用的消息服务器,采用Erlang语言编写,是一种开源的实现 AMQP(高级消息队列协议)的消息中间件;

消息中间件一般有三个主要角色:生产者、消费者、消息代理(消息队列、消息服务器);

生产者发送消息到消息服务器,然后消费者从消息代理(消息队列)中获取数据并进行处理;

MQ的基本结构:
在这里插入图片描述

RabbitMQ中的一些角色:

  • publisher:生产者
  • consumer:消费者
  • exchange个:交换机,负责消息路由
  • queue:队列,存储消息
  • virtualHost:虚拟主机,隔离不同租户的exchange、queue、消息的隔离

基本消息队列的消息发送流程:

  1. 建立connection

  2. 创建channel

  3. 利用channel声明队列

  4. 利用channel向队列发送消息

基本消息队列的消息接收流程:

  1. 建立connection

  2. 创建channel

  3. 利用channel声明队列

  4. 定义consumer的消费行为handleDelivery()

  5. 利用channel将消费者与队列绑定

2、RabbitMQ基本

RabbitMQ

3、SpringAMQP

SpringAMQP是基于RabbitMQ封装的一套模板,并且还利用SpringBoot对其实现了自动装配,使用起来非常方便。

SpringAMQP提供了三个功能:

  • 自动声明队列、交换机及其绑定关系
  • 基于注解的监听器模式,异步接收消息
  • 封装了RabbitTemplate工具,用于发送消息

3.1.Basic Queue 简单队列模型

在父工程mq-demo中引入依赖

<!--AMQP依赖,包含RabbitMQ-->
<dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-amqp</artifactId>
</dependency>

3.1.1.消息发送

首先配置MQ地址,在publisher服务的application.yml中添加配置:

spring:rabbitmq:host: 192.168.150.101 # 主机名port: 5672 # 端口virtual-host: / # 虚拟主机username: itcast # 用户名password: 123321 # 密码

然后在publisher服务中编写测试类SpringAmqpTest,并利用RabbitTemplate实现消息发送:

package cn.itcast.mq.spring;import org.junit.Test;
import org.junit.runner.RunWith;
import org.springframework.amqp.rabbit.core.RabbitTemplate;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.test.context.junit4.SpringRunner;@RunWith(SpringRunner.class)
@SpringBootTest
public class SpringAmqpTest {@Autowiredprivate RabbitTemplate rabbitTemplate;@Testpublic void testSimpleQueue() {// 队列名称String queueName = "simple.queue";// 消息String message = "hello, spring amqp!";// 发送消息rabbitTemplate.convertAndSend(queueName, message);}
}

3.1.2.消息接收

首先配置MQ地址,在consumer服务的application.yml中添加配置:

spring:rabbitmq:host: 192.168.150.101 # 主机名port: 5672 # 端口virtual-host: / # 虚拟主机username: itcast # 用户名password: 123321 # 密码

然后

http://www.dinnco.com/news/52373.html

相关文章:

  • 网站的功能设计seo教程seo入门讲解
  • 南通公司网站制作国内网站建设公司
  • 12345东莞网站长沙关键词优化公司电话
  • 阿里云建网站教程做企业网站哪个平台好
  • 招聘网站咋做网站推广系统
  • 韩国优秀平面设计网站有哪些seo免费浏览网站
  • 独立个人博客网站制作网站推广优化
  • 金色世纪做网站的是哪个岗位广告网络推广
  • 做秩序册的网站手机百度网页版 入口
  • 做车贴网站搜易网服务介绍
  • 公众号开发是什么广州seo推广公司
  • wordpress评论数据表女生做sem还是seo
  • 做商铺最好的网站广东宣布即时优化调整
  • 西安市网站建设网站建设与营销经验
  • 怎么搭建源码网站网站推广软件下载
  • 怎样做模板网站seo快速优化软件网站
  • 社交网络服务网站云南百度公司
  • 关于旅游网站策划书网络营销知识点
  • 网站推广任务 ip点击搜索引擎推广与优化
  • 淄川区住房和城乡建设局网站seo网站推广与优化方案
  • 网页制作与网站建设技术大全 下载系统优化大师下载
  • 东莞网站推广渠道北京网站优化页面
  • 360安全浏览器连云港网站seo
  • 网站建设报价图片欣赏怎么查询搜索关键词
  • 东莞招聘网官方网站谷歌优化排名哪家强
  • 网站优化专家18600119496seo网站优化软件价格
  • 网站建设大赛海报百度竞价开户公司
  • flash视频网站微信小程序开发教程
  • 福州专业网站建设服务商东莞网站建设做网站
  • 江苏公司网站建设网络公司取什么名字好