文档章节

JMS消息的概念解释-stomp

fir01
 fir01
发布于 2014/12/27 17:26
字数 737
阅读 86
收藏 0

「深度学习福利」大神带你进阶工程师,立即查看>>>

1、默认生产者消息是持久的:会存数据库

--消费者的持久:createDurableSubscriber是指消费者能收到所有它订阅时间点之后的消息,即使消

费者注册后关闭,当它重启就能收到注册时间点之后所有的消息;即当此消费用户ID(AAA)在producer发

送之前就已经注册,那么此id能收到producer发送的所有消息,如果是在producer之后注册的那么只能

收到此时间点后的消息;

--注意:topic和queue消费者收到消息后有两种情况,设置为Session.CLIENT_ACKNOWLEDGE,必须代码显示调用

acknowledge()方法,那么重启后不会收到消息,否则客户端不确认则每次重启都会收到

--消费者的非持久。createConsumer只能接受到启动时间点之后,生产者producer发送的消息

--另外topic的生产者还有个特别的参数retain:true,设置为true时,无论何时订阅者启动,都能收到

对应主题destination的最后一条信息;但是如果broker重启了,则者最后一条又是丢弃的,估计能使用

的场景很少。

2、topics和queues的区别。

--topics时广播给所有已经订阅消费者,queues仅被一个消费者获取一次。但是queues如果broker未能

证实已经有订阅者消费,那么下一个订阅者继续消费-----这句话包含好几层意义:多个消息获取端不

会获得重复的信息;但是如果消息可能被消费,但是每到服务器确认,就会被2次消费,极端情况如收到

信息还没发回执到服务器就断网了;如果多个消费者同时在线消费100条信息,他们消费到的信息都是随

机的,总数不会超过100;如果没有消费者消费这条消息,这条消息一直在服务器中显示为未消费状态,除非手工删除。

--topics在broker系统里面找不到消费者就会丢弃消息。就是说只会发送给已经订阅的消费者,反之从

消费者来讲,它只消费它订阅后的生产者发送的消息吃就丢弃不代表不持久。

--queues有可靠性消息,请区别topics的持久性消息,可靠消息并不保证有订阅者接受到消息,可靠性

消息保证一定有订阅者接受消息

3、可靠性消息

--queues中producer使用receipt参数来发送消息,这个参数是id标志,当broker收到订阅者消费完毕

信息后发个回执消息给producer,包含参数receipt-id,值对应producer发送的参数receipt

SEND

destination:/queue/a

receipt:001

hello queue a

^@

接受方:

RECEIPT

receipt-id:001

^@


fir01
粉丝 19
博文 110
码字总数 34117
作品 0
长沙
项目经理
私信 提问
加载中
请先登录后再评论。
Netty那点事(三)Channel与Pipeline

Channel是理解和使用Netty的核心。Channel的涉及内容较多,这里我使用由浅入深的介绍方法。在这篇文章中,我们主要介绍Channel部分中Pipeline实现机制。为了避免枯燥,借用一下《盗梦空间》的...

黄亿华
2013/11/24
2W
22
mvc框架--Razor

Razor 是一个轻巧而优雅的servlet mvc框架 # 又一个轮子? no,写就她是为了证实我个人的某些想法,并在这个过程中练练手,这两种冲动碰撞在一起,自然而然地产生了Razor # Razor的现在和未来...

dtubest
2013/01/25
3.1K
0
硬实时操作系统--Raw OS

Raw-OS 起飞于2012年,Raw-OS志在制作中国人自己的最优秀硬实时操作系统。 Raw-OS 操作系统特性 内核最大关中断时间无限接近0us, s3c2440系统最大关中断时间实测0.8us。 支持idle任务级别的事...

jorya_txj
2013/03/19
6.3K
1
自定义表单系统--FormDesign

是基于 FLEX 开发的一款B/S的自定义表单系统 整个过程如下: 1、通过FormDesign自定义表单画出相应的表单; 2、将生成好的XML放到程序中,并通过后台自动编译成JSP; 注:FormDesing只是自定...

polliwog
2013/03/29
1.6W
1
JBoss 事务服务--Narayana

JBoss 事务服务(JBossTS 也叫 Narayana )保护企业数据破坏,保证数据完整、准确。为基于Java的应用程序(包括那些写给JEE和EJB框架)从而消除风险和相关成本非常耗时的和解失败后。...

匿名
2012/11/04
1.3K
0

没有更多内容

加载失败,请刷新页面

加载更多

MySQL索引相关

一、索引分类 1、单列索引 1.1、主键索引(不能包含空值) 1.2、唯一索引(可以包含kong'zhi) 1.3、普通索引 2、多列索引 2.1、组合索引 3、全文索引 3.1、全文索引只针对大文本字段有效,比如:...

城里的月光
今天
21
0
二级分销的理解

人人商城分销定义 例如: 分销商:A、B、C、D、E 群体1:A是B的上级分销商,B是C的上级分销商,C是D的上级分销商,则他们分销层级是:A是一级分销商,B是二级分销商,C是三级分销商 群体2:B...

红翼网
今天
6
0
HBase/TiDB都在用的数据结构:LSM Tree,不得了解一下?

LSM Tree(Log-structured merge-tree)广泛应用在HBase,TiDB等诸多数据库和存储引擎上,我们先来看一下它的一些应用: 这么牛X的名单,你不想了解下LSM Tree吗?装X之前,我们先来了解一些...

Monica2333
今天
26
0
Linux下如何高效切换目录?

Linux 下对于目录的切换,大家肯定会想到一个命令:cd 命令。这个是 Linux 下再基本不过的命令,如果这个命令都不知道的话,赶紧剖腹自尽去吧。 cd 命令确实很方便,但如果需要频繁在下面的目...

良许Linux
今天
45
0
限流算法

1 计数算法 2 滑动窗口 (可以解决计数算法 临界线 QPS超过限流问题) 3 漏桶算法 4 令牌桶算法

yzzzzzzzz
今天
3
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部