2013-05-02 124 views
6

尝试将消息发送到TIBCO Ems队列时出现异常(如下所示)。TIBCO ems超出队列限制

javax.jms.ResourceAllocationException: Queue limit exceeded 
at com.tibco.tibjms.Tibjmsx.buildException(Tibjmsx.java:523) 
at com.tibco.tibjms.TibjmsxSessionImp._publish(TibjmsxSessionImp.java:1390) 
at com.tibco.tibjms.TibjmsMessageProducer._publish(TibjmsMessageProducer.java:246) 
at com.tibco.tibjms.TibjmsQueueSender.send(TibjmsQueueSender.java:51) 

我所看到的唯一的地方,这个例外谈到为这个链接:http://class10e.com/tibco/a-queue-is-defined-as/

,从这里我能猜到你需要有每个队列至少一个用户所发送的任何之前消息。一旦我创建了一个消费者它的工作,但只有约5或6条消息。奇怪的是,我在每次测试前清空队列,并且发送相同的文本消息,因此没有大小差异。它有时在5次之后,有时在6次消息之后失败?在我最初清空队列后,我没有使用这些消息(我创建了一个消费者,但使用了eclipses调试来暂停消息使用者的线程)。有谁知道这个例外的原因是什么?

+3

请发布'show queue '从'tibemsadmin'得到异常后的结果 – fglez 2013-05-03 12:28:22

回答

-1

这个错误可能是由于以下

EMS队列的默认大小为512MB,如果你越过这条大小,则错误

+0

我不是512 MB。 – jon 2013-05-03 14:27:24

+0

错误的信息,我认为user2163769在这里混淆了默认的内存设置(这可以很容易地调整),正如上面的Abdul Kader所说的那样,目标上可能有一个设置可以用来限制生产者将队列溢出阈值,检查您尝试使用的队列上的MAXBytes或MaxMessages设置。 – Seb 2015-12-22 10:46:48

1

好像似乎有对destination.Resulting在设置MAXBYTES OR MAXMSGS性质队列限制超出错误。

请检查您的目标属性..

希望这有助于

0

使用此命令increate队列大小形式EMS冶理工具

setprop队列队列名maxmsgs = 10000

setprop队列队列名maxbytes = 1024MB