RabbitMQ中Queue详细介绍
新建队列
新建Queue时有很多参数,都代表什么含义,在这里解释一下:
前述:Rabbit版本为3.7.6 ErLang 版本为 21.0.1
Name
必填项,队列的名字,建议格式可以为多个字段,表示队列中存放的内容,比如task.queue
Durability
是否需要持久化,有两个选项Durable(长久的)和Transient(临时的)
Auto delete
是否自动删除,如果选择yes,则消息会被其中一个消费者所消费,之后队列会自动销毁,其他消费者也会断开连接(队列都没了,连接肯定断了)。
Arguments
RabbitMQ有很多的参数可以设置
x-message-ttl:值为Number类型,表示消息在队列中的存活时间,单位为毫秒
x-expires:值为Number类型,表示队列存在的时间,单位为毫秒
x-max-length:值为Number类型,一个队列中能够存放的最多消息个数,超过设定个数之后就会从head开始丢弃消息。也就是先到的消息会先被丢弃。
x-max-length-bytes:值为String类型,队列中每个消息的最大字节数,超过设定个数之后就会从head开始丢弃消息。也就是先到的消息会先被丢弃。
x-overflow:值为String类型,设置队列溢出时的行为,可选值为drop-head或reject-publish
x-dead-letter-exchange:值为String类型,如果消息被拒绝或者过期后,消息被重新放入的exchange名称
x-dead-letter-routing-key:值为String类型,当消息dead-lettered,根据routing key 进行路由消息,如果没有设置,会使用消息的原始routing key
x-max-priority:值为Number类型,最大的消息优先级,如果不设置,则不支持消息优先级
x-queue-mode:值为String类型,如果设为lazy,则会将尽可能多的消息保存到磁盘上,减少内存的使用,如果不设置,则所有消息都放到内存,保证最快速度的分发
x-queue-master-locator:值为String类型,当在集群中时,设置队列为master location mode,会决定队列master在集群中的位置
遗留问题:
rabbitMQ与kafka的对比
SpringMVC如何支持RabbitMQ(web.xml配置)
listener中如果处理消息时出现异常,为什么会不停消费同一条消息
参考文献:
https://www.rabbitmq.com/documentation.html
https://www.rabbitmq.com/getstarted.html
https://www.cnblogs.com/frankyou/p/5283539.html
https://blog.csdn.net/u012758088/article/details/78024581
http://www.amqp.org/
RabbitMQ中Queue详细介绍的更多相关文章
- 转:Http协议中Cookie详细介绍
Http协议中Cookie详细介绍 Cookie总是保存在客户端中,按在客户端中的存储位置,可分为内存Cookie和硬盘Cookie.内存Cookie由浏览器维护,保存在内存中,浏览器关闭后就消失了, ...
- RabbitMQ基础概念详细介绍
http://blog.csdn.net/column/details/rabbitmq.html 转至:http://www.ostest.cn/archives/497 引言 你是否遇到过两个(多 ...
- Laravel 模板引擎Blade中标签详细介绍
这篇文章主要介绍了Laravel模板引擎Blade中section的一些标签的区别介绍,需要的朋友可以来看看. Laravel 框架中的Blade模板引擎很好用,但是官方文档介绍的并不详细,我接下来将 ...
- Http协议中Cookie详细介绍(转)
原文:http://www.169it.com/article/3217120921.html Cookie总是保存在客户端中,按在客户端中的存储位置,可分为内存Cookie和硬盘Cookie.内存C ...
- Http协议中Cookie详细介绍
Cookie总是保存在客户端中,按在客户端中的存储位置,可分为内存Cookie和硬盘Cookie.内存Cookie由浏览器维护,保存在内存中,浏览器关闭后就消失了,其存在时间是短暂的.硬盘Cookie ...
- typescript整合到vue中的详细介绍,ts+vue一梭子
通过vue-cli命令行安装vue项目,注意不要eslint 安装依赖 cnpm install typescript --save-dev cnpm install ts-loader --save ...
- Unity3D中GameObject 详细介绍
通过Hierarchy面板下的Create菜单可以手动地创建一个GameObject,它可以是一个相机,一个灯光,或者一个简单的模型,当我们要在程序里面动态地创建一个相机的时候,可以new一个Game ...
- RabbitMQ消息队列(一): Detailed Introduction 详细介绍
http://blog.csdn.net/anzhsoft/article/details/19563091 RabbitMQ消息队列(一): Detailed Introduction 详细介绍 ...
- RabbitMQ学习总结(1)——基础概念详细介绍
一.基础概念详细介绍 1.引言 你是否遇到过两个(多个)系统间需要通过定时任务来同步某些数据?你是否在为异构系统的不同进程间相互调用.通讯的问题而苦恼.挣扎?如果是,那么恭喜你,消息服务让你可以很轻松 ...
随机推荐
- react-native-storage + AsyncStorage 实现数据存储
1.组件封装 import Storage from 'react-native-storage'; import { AsyncStorage } from 'react-native'; cons ...
- iOS学习笔记23-音效与音乐
一.音频 在iOS中,音频播放从形式上能够分为音效播放和音乐播放. * 音效: * 主要指一些短音频的播放,这类音频一般不须要进行进度.循环等控制. * 在iOS中.音效我们是使用AudioToolb ...
- (五)EasyUI使用——datagrid数据表格
DataGrid以表格形式展示数据,并提供了丰富的选择.排序.分组和编辑数据的功能支持.DataGrid的设计用于缩短开发时间,并且使开发人员不需要具备特定的知识.它是轻量级的且功能丰富.单元格合并. ...
- PHP-手册阅读
配置选项: html_errors: 无意义的 HTML 标记符会使得出错信息很凌乱, 所以在外壳下阅读报错信息是十分困难的, 因此将该选项的默认值改为 FALSE implicit_flush: 在 ...
- js Json操作
JSON字符串: var jsonStr='{"fname":"json","fage":1}' JSON对象: var jsonOb ...
- Python内置函数之format()
format(value[,format_spec])返回字符串对象. 可以用来格式化value. >>> format(,'0.3f') #保留3位小数 '12.000' > ...
- TFS中如何排除Nuget的Packages文件夹
在项目的解决方案下新增.tfignore文件.文件内容如下: \packages 在项目的解决方案下新增.nuget文件夹,并新增Nuget.config文件,文件内容如下: <?xml ver ...
- form表单右边弹窗提示不能为空
if (key == null || key == "") { layer.tips('流程标识key不能为空', $('#search_input'), { tips: [3, ...
- Windows Server 2008 R2入门之用户管理
一.用户账户概述: ”用户”是计算机的使用者在计算机系统中的身份映射,不同的用户身份拥有不同的权限,每个用户包含一个名称和一个密码: 在Windows中,每个用户帐户有一个唯一的安全标识符(Secur ...
- hdu1533 Going Home 最小费用最大流 构造源点和汇点
Going Home Time Limit: 10000/5000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total ...