Есть ли хорошие руководства или примеры использования ObjectPool/пулов Java?

Я пытаюсь создать пул каналов/подключений к серверу очередей и пытался использовать ObjectPool, но у меня возникли проблемы с его использованием из примера на их сайт.

Пока у меня есть потоки, которые работают, но я хочу, чтобы каждый из них захватывал канал из пула, а затем возвращал его. Я понимаю, как это использовать (заимствованиеобъекта/возвратаобъектов ), но не знаю, как создать исходный пул.

Вот как создаются каналы в rabbitmq:

ConnectionFactory factory = new ConnectionFactory();
    factory.setHost("localhost");
    Connection connection = factory.newConnection();
    Channel channel = connection.createChannel();

и мой код просто использует канал, чтобы делать разные вещи. Я в замешательстве, потому что единственный пример, который я смог найти (на их сайте ), начинается так :

private ObjectPool pool;

    public ReaderUtil(ObjectPool pool) { 
        this.pool = pool;
    }

, что для меня не имеет смысла. Я понял, что это обычное дело для установления соединений с базой данных, поэтому я попытался найти учебные пособия по базам данных и ObjectPool, но они, похоже, используют DBCP, специфичный для баз данных (, и я не могу использовать логику для своего сервера очередей )..

Любые предложения о том, как его использовать? Или есть другой подход, используемый для пулов в java?

7
задан Lostsoul 28 April 2012 в 23:02
поделиться