rabbitmq - 简单认识
1. 概述
- 与 rabbitmq 做交互
- amqp 最著名的实现
- 与 jms 最明显的区别
- 消息
- 不是去找 queue
- 而是去找 exchange
- 消息
2. rabbitmq
- 基本组件
- sender
- 发送者
- receiver
- 接收者
- 从 queue 里接受消息
- 接收者
- broker
- 概述
- 队列服务器, 中间件
- 组件
- exchange
- 作用
- 接受 消息
- 转发消息
- 作用
- binding
- 貌似是 queue 的一个属性
- queue
- 存放消息, 等待消费
- exchange
- 概述
- sender
- 与 jms 的区别
- jms
- 分发
- 直接将消息分发到 queue
- 消息
- 携带着 目的地址
- 分发
- rabbitmq
- 分发
- 有着相对复杂的规则
- 规则根据 exchange 和 消息携带的信息, 进行转发
- 消息
- 不携带 目的 queue
- 携带的是 routing key
- 分发
- jms
- 消息的活动路径
- 略
- exchange 简述
- default
- 默认创建
- 知道 broker 里所有的 queue
- 转发
- 找到 消息里 routing key
- 找到 queue 名称
- 如果相同, 就发过去
- direct
- 类似 default
- 这次比对的, 是 消息的 routing key 和 queue 的 bingding key
- 类似 default
- topic
- 类似 direct
- 不过区别是, 转发的次数, 可能会有很多
- 支持 binding key 正则匹配
- 不过区别是, 转发的次数, 可能会有很多
- 类似 direct
- fanout
- @所有人
- header
- 类似 topic
- 不过这次的判定依据, 是 消息的 header 与 binding key
- 类似 topic
- dead letter
- 类似 java 的 catch
- 转发那些有问题的消息
- 类似 java 的 catch
- default
- 我的认识
- message
- 属性
- header
- 内容
- 发送时指定
- routing key
- exchange
- jms
- jms 的消息, 貌似没有这么多属性
- 地址 都是在发送时候由 template 指定的
- 不过连接字符串倒是已经配好了的
- 属性
- queue
- 属性
- name
- binding key
- queue
- 属性
- 消息的路径
- 使用特定的 假设有个 template 与 broker 通信
- 感觉通常 一个 template 对应 一个 broker
- 一个 broker 对应一个 exchange
- 到了 exchange 后, 与 规则匹配, 然后转发
- 使用特定的 假设有个 template 与 broker 通信
- message
rabbitmq - 简单认识的更多相关文章
- rabbitmq简单收发服务搭建
消息发送.接收简单代码示例 mq.xml //rabbitmq config spring.rabbitmq.host=ip:host spring.rabbitmq.username= spring ...
- RabbitMQ简单应用の简单队列
(1)首先创建一个maven项目: pom.xml,重点是配置RabbitMQ <dependencies> <dependency> <groupId>junit ...
- AMQP消息队列之RabbitMQ简单示例
前面一篇文章讲了如何快速搭建一个ActiveMQ的示例程序,ActiveMQ是JMS的实现,那这篇文章就再看下另外一种消息队列AMQP的代表实现RabbitMQ的简单示例吧.在具体讲解之前,先通过一个 ...
- rabbitmq简单实例
JMS组件:activemq(慢)AMQP组件(advance message queue protocol):rabbitmq和kafka 一..消息队列解决了什么问题?异步处理应用解耦流量削锋日志 ...
- RabbitMQ 简单的消息发送与接收
RabbitMQ是建立在AMQP(Advanced Message Queuing Protocol,高级消息队列协议)基础上的,而AMQP是建立在TCP协议之上的. 因此,RabbitMQ是需要建立 ...
- RabbitMQ简单使用
环境搭建: RabitMQ是用Elang编写的,虽然Elang本身是跨平台的,但也同时意味着搭建Rabit环境需要首先配置Elang环境.配置RabitMQ的网上教程还比较多的: windows 下 ...
- RabbitMQ基础组件和SpringBoot整合RabbitMQ简单示例
交换器(Exchange) 交换器就像路由器,我们先是把消息发到交换器,然后交换器再根据绑定键(binding key)和生产者发送消息时的路由键routingKey, 按照交换类型Exchange ...
- PHP 下基于 php-amqp 扩展的 RabbitMQ 简单用例 (四) -- Push API 和 Pull API
RabbitMQ 中针对消息的分发提供了 Push API (订阅模式) 和 Pull API (主动获取) 两种模式. 在 PHP 中, 这两种模式分别通过 AMQPQueue 类中的 consum ...
- rabbitmq 简单示例(Hello World)
一:消息中间件: AMQP,即Advanced Message Queuing Protocol,高级消息队列协议,是应用层协议的一个开放标准,为面向消息的中间件设计 RabbitMQ是实现AMQP( ...
- RabbitMQ学习笔记(2)----RabbitMQ简单队列(Hello World)的使用
1. 简单队列结构图 2. 引入依赖 pom.xml文件 <dependency> <groupId>com.rabbitmq</groupId> <arti ...
随机推荐
- 欢迎来到L T X的博客 & 博客转型公告
这里是L T X,一位来自重庆的学生的个人博客. 由于博主以前是OIer,目前博客里主要是OI相关的内容. 但是现在博主已经退役了,因此博客将会转向...嗯...那种...就是那种...比较奇怪的类型 ...
- Django Form组件的扩展
Form组件扩展 1.用Form组件自带的正则扩展 通过Django内置的字段:Validators自定义验证规则 方式一: from django.forms import Form from dj ...
- C++——指针3
指针作为函数参量 指针作为函数参量,以地址的方式传递数据,可以用来返回函数处理结果:实参是数组名时形参可以是指针. 题目:读入三个浮点数,将整数部分和小数部分分别输出 #include <ios ...
- 题解 AT859 【元素の系統名】
题目传送门. 介绍一种使用string字符串的方法. \(string\)是\(C++\).\(java\).\(VB\)等编程语言中的字符串,字符串是一个特殊的对象,属于引用类型. \(C++\)标 ...
- C# asp.net 配置文件连接sql 数据库
先引用 using System.Configuration;//配置文件using System.Data.SqlClient; 我这里使用的是SqlServer 2008 sa 用户 密码也为s ...
- 题解【BZOJ4472】[JSOI2015]salesman
题面 树形\(\text{DP}\)与贪心的结合. 首先考虑树形\(\text{DP}\). 设\(dp_i\)表示从\(i\)出发,访问\(i\)的子树,并且最后回到\(i\)能获得的最大收益. 转 ...
- java注册界面及mysql连接
题目要求 完成注册界面及添加功能 1登录账号:要求由6到12位字母.数字.下划线组成,只有字母可以开头:(1分) 2登录密码:要求显示“• ”或“*”表示输入位数,密码要求八位以上字母.数字组成.(1 ...
- 基于.NET Core winform的录音、字幕软件HTWCore的技术总结
HTWCore是一款基于.NET Core的winform客户端程序,可以用来处理各种会议,记录,讲座,讲课等等来源的音视频,运用语音识别.视频内容提取等技术整理成word文档.项目中运用了以下技术: ...
- Maven设置阿里云镜像
<mirrors> <mirror> <id>alimaven</id> <name>aliyun maven</name> & ...
- 利用Python数据分析基础
一.Numpy的ndarray:一种多维数组 ndarray是一个通用的同构多维数据容器,其所有元素必须是相同的类型.每个数组都有一个shape(一个表示各维度的元组)和dtype(一个用于说明数据数 ...