2010-12-02 63 views
2

在基於HornetQ引擎的應用程序中,我打算創建多個生產者和消費者。 我瞭解到,我應該儘可能多使用資源,謝謝this page我應該在基於HornetQ的應用程序中只使用一個Session嗎?

這是否意味着,對於我的應用程序,我應該創建一個和一個ConnectionFactory,一個Connection,一個會話,然後(使用此會話對象)創建儘可能多的生產者/消費者?

這不應該是困難的,但我不知道這是正確的做法。

回答

9

拇指最小的資源使用的最佳準則是使用結構最少,同時儘可能其餘線程安全的。因此:

  1. 連接工廠是線程安全的:每個JMS服務器(或每目的地類型主題和隊列JMS服務器之一)
  2. 連接是線程安全的:根據不同的應用架構,您可以使用一個連接,但我不會向後彎曲做這件事。
  3. 會話,會話下的所有結構都是線程安全的:你需要每個線程併發一個會話(或每次交易,如果你認爲它這樣)。

基於此,希望您可以在優雅的架構和低資源利用率之間取得平衡。

+0

端Q,是安全的,從同一個會話創建2個生產者和在不同的線程在同一時間有可能使用它們? – 2011-01-03 00:45:48

相關問題