3

簡単な問題を一つ教えてください。Spring なしで PooledConnectionFactory、JMSTemplate を使用する必要があります。ActiveMQ は、このクラスが接続、プロデューサー、セッションをプールしていると言っていますが、私を混乱させているのは、インスタンスからそれらを取得する方法がわかりません。私はいくつかのtakeConnection()、次にrealeaseConnection()、takeProducer()、そしてreact Producer()を待っていました。pooledConnectionFactory.start(); の後に何をすればよいですか? 通常、私は Connection c = pooledConnectionFactory.createConnection... を行います... 希望、私は私の問題を説明しました。また、Connection から直接作成された場合のプロデューサーとセッションのプール方法。

    connectionFactory = new ActiveMQConnectionFactory(
            userId, 
            passWord, 
            brokerURL);
    log.info("Queueing service init: BrokerURL: " + brokerURL + "  UserId: " + userId + "   Paasword: " + passWord);

    pooledConnectionFactory = new PooledConnectionFactory(connectionFactory);

    pooledConnectionFactory.setIdleTimeout(5000);
    pooledConnectionFactory.setMaxConnections(10);
    pooledConnectionFactory.setMaximumActive(5000);
    pooledConnectionFactory.start();
4

1 に答える 1

3

プールされた接続ファクトリは、使用に関しては他の JMS 接続ファクトリと同じです。

ただ電話してください:

pooledConnectionFactory.createConnection(); // あなたのように

接続ファクトリは実際には接続を作成しませんが、プールされた接続を提供します。次に、connection.close(); 再びプールに解放します。しかし、ボンネットの下にあるものはすべて、慣れているように使用するだけで問題ありません。同じことがセッションとプロデューサーにも当てはまりますが、コンシューマーには当てはまりません。

于 2012-06-21T20:46:11.657 に答える