例如,当我们在EJB3中配置监听JMS队列的MDB实例的数量时,
* <!-- begin-xdoclet-definition -->
* @ejb.bean name="myEjb"
* acknowledge-mode="Auto-acknowledge"
* destination-type="javax.jms.Queue"
* what to use for max Session??
<activation-config>
<activation-config-property>
<activation-config-property-name>destinationType</activation-config-property-name>
<activation-config-property-value>javax.jms.Queue</activation-config-property-value>
</activation-config-property>
<activation-config-property>
<activation-config-property-name>acknowledgeMode</activation-config-property-name>
<activation-config-property-value>Auto-acknowledge</activation-config-property-value>
</activation-config-property>
</activation-config>
您所拥有的语法应该可以很好地工作。如果这不起作用,我会怀疑您的META-INF目录中有一个部署描述符文件,它超过了maxsession
值。
相反,如果maxsession
注释没有得到遵守,则可能必须使用部署描述符文件,例如ejb-jar.xml
文件。
一点背景:我需要改进我们的一个批处理框架的性能。在那里,批处理输入被发送到JMS队列。此外,在队列endpoint,我们有一个MDB,它正在使用消息。现在,我在这里怀疑的是,如果有大量的消息,就没有MDB实例可以使用这些消息,因为所有这些消息都在处理之前的消息时被搁置。为了改善这一点,我正在考虑在MDB业务逻辑中实现一个线程池,这样一旦MDB接收到消息并将其传递给线程,它就可以免费使用另一条消息。
问题内容: 我正在与Artemis作为新的JMS提供程序一起提供的WildFly 10.1一起工作,但是我无法找到如何动态更改特定MDB的使用者线程数的方法。 我有一个队列,还有一个使用队列中消息的消息侦听器(MDB),现在我想动态控制域必须启动的使用者线程的最大数量。 如何使用CLI做到这一点? 问题答案: 要动态更新池属性,可以看一下这篇文章,该文章描述了如何使用jboss- cli或stan
我在Weblogic 12c上部署了一个MDB,它从JMS队列(UDQ)读取消息。MDB正在读取消息,但它没有从JMS队列中删除,这导致消息被重复读取。所以,我想知道MDB何时确认JMS队列它成功读取了消息,并且队列应该删除该消息。
问题内容: 我正在使用EJB 3.1,并且想配置一个MDB来侦听多个队列。 我更喜欢通过XML定义队列名称,而其他通过注释定义。 能做到吗? 问题答案: 实例化后,MDB只能侦听在其目标ActivationConfigProperty中指定的资源,但是您 可以 为同一MDB创建具有不同目标的多个实例(在您的情况下为队列)。 在ejb-jar.xml中创建两个条目,它们具有不同的目的地和ejb-na
我有一个文件 这个类是一个独立的文件, 这个类被多个其他文件所引用 如何提前hack这个类 让他每次实例化的时候回调给我, 让我知道他实例化了从而运行一些实例化的代码
问题内容: 我一直在查看我的elasticsearch日志,但遇到了错误 查找错误后,普遍的共识是增加队列的大小,如此处所述-https: //www.elastic.co/guide/en/elasticsearch/reference/current/modules- threadpool.html 我的问题是实际上该如何做?我缺少某处的配置文件吗? 问题答案: 要更改队列大小,可以将其添加到