我在Glassfish 3.1.2.2上运行了许多MDB。 由于其中一个MDB的工作性质,我需要使其成为单线程。我查看了Tuning Guide,虽然将最大池大小设置为1确实解决了问题,但这也意味着所有其他MDB都是单线程的。我真正想要实现的是特定的MDB是单线程的,同时允许其他MDB是多线程的。
答案 0 :(得分:2)
通过glassfish-ejb-jar.xml部署描述符很容易实现:
<glassfish-ejb-jar>
<enterprise-beans>
<ejb>
<ejb-name>YourMDB</ejb-name>
<bean-pool>
<resize-quantity>1</resize-quantity>
<max-pool-size>1</max-pool-size>
<steady-pool-size>1</steady-pool-size>
</bean-pool>
</ejb>
</enterprise-beans>
</glassfish-ejb-jar>
无论全局池大小是什么,上面的部分都会将处理bean的数量严格限制为1。这样您就可以轻松地微调系统设置。