Я пытался разделить соединение между потоками и сделать так, чтобы каналы открывались только при создании потока, но, изучив немного больше, я думаю, что хочу также попробовать connection pooling
. Как я могу сделать это на rabbitmq? или это общая идея, которую я могу применить в целом? Моя цель состоит в том, чтобы порождать потоки X, а затем им не нужно открывать новые каналы (, что требует установления циклического перебора между клиентом и сервером ).
Поскольку потоки являются собственным классом, я не уверен, нужно ли размещать пул в самом классе, который порождает потоки, или куда они направляются? У меня также есть несколько типов потоков, и я хотел бы поделиться этими соединениями. между (не один ). Это возможно?
Просто чтобы дать вам общее представление,вот как устанавливаются соединения/каналы в rabbitmq:
ConnectionFactory factory = new ConnectionFactory();
factory.setHost("localhost");
Connection connection = factory.newConnection();
Channel channel = connection.createChannel(); //I want to share several of these between threads