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 + react-native-tab-navigator 实现 TabBar
1.安装 react-native-tab-navigator yarn add react-native-tab-navigator 2.页面调用 /** * 主页面 */ import React ...
- C中的C文件与h文件辨析(转)
简单的说其实要理解C文件与头文件(即.h)有什么不同之处,首先需要弄明白编译器的工作过程,一般说来编译器会做以下几个过程: 1.预处理阶段 2.词法与语法分析阶段 3.编译阶段,首先编译成 ...
- 【Android布局】在程序中设置android:gravity 和 android:layout_Gravity属性——位置设置偏向
LinearLayout有两个非常相似的属性: android:gravity与android:layout_gravity. 他们的区别在于: android:gravity 属性是对该view中内 ...
- SkipList的实现
当做笔记记录下来:) 相比于bTree,skiplist占用更多的空间. 而在并发的环境下skiplist会比bTree效率更高. (bTree插入的时候需要rebalance,需要lock比较多的结 ...
- 【BIEE】12_查看BIEE的物理SQL
有时候,我们在使用BIEE的时候回出现一些问题,需要借助物理SQL来进行问题分析.通过物理SQL我们就可以看到BIEE在数据库中是如何去检索出数据库. 查看物理SQL的方式 [登录BIEE]--[管理 ...
- Win7与虚拟机Linux互通ping的网络设置
转载请标明出处:http://www.linuxidc.com/Linux/2014-04/100450.htm 虽然从WinXP到Win7一直都可以使用VMWARE虚拟机安装Linux系统,记得每次 ...
- python使用单例模式创建MySQL链接
代码: from functools import wraps import mysql.connector from sshtunnel import SSHTunnelForwarder def ...
- 利用HTML5 Canvas和Javascript实现的蚁群算法求解TSP问题演示
HTML5提供了Canvas对象,为画图应用提供了便利. Javascript可执行于浏览器中, 而不须要安装特定的编译器: 基于HTML5和Javascript语言, 可随时编写应用, 为算法測试带 ...
- linux 实时显示文件的内容
1. watch -n 1 aa.txt #每个1秒显示aa.txt的内容 2. tail -f ***.log Linux shell中有一个tail命令,常用来显示一个文件的最后n行文档内容 但 ...
- [ci]持续集成系列
持续集成一直很蛋疼,感觉没底. 几个方面来写 1,搭建gitlab 配邮箱 域名等使之好用 2,搭建jenkins –yum,安装常见插件 3,搭建sonar,汉化 4,安装sonar-scanner ...