2

我有许多在 Glassfish 3.1.2.2 上运行的 MDB。由于其中一个 MDB 的工作性质,我需要将其设为单线程。我查看了Tuning Guide,虽然将最大池大小设置为 1 确实解决了问题,但这也意味着所有其他 MDB 都是单线程的。我真正想做的是让特定的 MDB 是单线程的,同时允许其他的 MDB 是多线程的。

4

1 回答 1

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,而不管全局 poolsize 说什么。这样您就可以轻松地微调系统设置。

于 2013-12-09T13:30:23.857 回答