RabbitMQ the connection cannot support any more channels. consider creating a new connection - rabbitmq

RabbitMQ the connection cannot support any more channels. consider creating a new connection
RabbitMQ the connection cannot support any more channels. consider creating a new connection

Related

Mirth Connect and RabbitMQ

I'm new to Mirth Connect and was hoping to send and receive messages to/from RabbitMQ. Mirth Connect doesn't natively support this, only JMS. I've tried installing the RabbitMQ JMS client, but get exception RMQJMSException: invalid stream header: 4C616220. I get the impression that even if I succeeded, there still isn't interoperability between JMS clients and AMQP clients.
It looks like I'll have to go down the JavaScript Reader / JavaScript Writer route, which strikes me as very inefficient. Does anyone have experience in connecting to RabbitMQ in such a manner?

Which TLS/SSL version does Amazon MQ client uses to connect to brokers?

In Amazon MQ, when we connect from Active MQ client to Amazon MQ broker, we just use connection URL as ssl://<broker>:61617 but nowhere in whole AWS documentation it mentioned if this client-broker communication is secure or not and which version of TLS does client-broker connection use. Below is sample snippet of code to connect Amazon MQ as provide by AWS here.
// Create a connection factory.
final ActiveMQConnectionFactory connectionFactory = new ActiveMQConnectionFactory(wireLevelEndpoint);
// Pass the username and password.
connectionFactory.setUserName(activeMqUsername);
connectionFactory.setPassword(activeMqPassword);
// Create a pooled connection factory.
final PooledConnectionFactory pooledConnectionFactory = new PooledConnectionFactory();
pooledConnectionFactory.setConnectionFactory(connectionFactory);
pooledConnectionFactory.setMaxConnections(10);
// Establish a connection for the producer.
final Connection producerConnection = pooledConnectionFactory.createConnection();
producerConnection.start();
This article says it uses SSL but no mention, which version of TLS/SSL it uses as old SSL is no more secure.
Which TLS/SSL version does Amazon MQ broker - client connection use? Do we have any othe way to use latest version of TLS with Amazon MQ broker - client?
Amazon recommend TLS 1.2 or later.
https://docs.aws.amazon.com/amazon-mq/latest/developer-guide/data-protection.html

Use-case of the ServiceClient?

Is the use-case of the ServiceClient to send messages to devices?
ServiceClient supports only amqp messages. Documentation for Azure Devices namespace says "Transport types supported by ServiceClient - Amqp and Amqp over WebSocket only". In code the TransportType exposes only Amqp. Would it be changed in the future?
If the ServiceClient is been used for C2D messages, why in this answer, is written that "For ServiceClient, you need Azure IoT Hub connection string, not device connection string"?
What is the performance's impact and resources' utilization, if we hold a reference of the created ServiceClient object (or the Registry Manager)?
and what is the impact in case
when we open-close the connection?
when we leave open the conection?
Is the use-case of the ServiceClient to send messages to devices?
Yes. You need use ServiceClient to send C2D messages.
ServiceClient supports only amqp messages. Documentation for Azure
Devices namespace says "Transport types supported by ServiceClient -
Amqp and Amqp over WebSocket only". In code the TransportType exposes
only Amqp. Would it be changed in the future?
For future plans, you can reference this guide ask a question.
If the ServiceClient is been used for C2D messages, why in this
answer, is written that "For ServiceClient, you need Azure IoT Hub
connection string, not device connection string"?
Device connection string: Connection string based on primary key used in API calls which allows device to communicate with Iot Hub. It allows you to receive C2D messages, not send C2D messages. IoT Hub exposes its functionality to various actors, like per-device and service.
What is the performance's impact and resources' utilization, if we
hold a reference of the created ServiceClient object (or the Registry
Manager)?
You can check IoT Hub throttling and you and IoT Hub quotas and throttling for more detail.

Stackexchange.Redis why does ConnectionMultiplexer.Connect establishes two client connections?

I am curious why ConnectionMultiplexer.Connect(options) attempts to connect 2 clients to the RedisDB instead of 1? Each time I connect I see that 2 additional clients connect to my RedisDB.
Because redis requires separate connections for interactive commands versus pub/sub subscriptions. If you aren't using pub/sub, you could tell the options to disable the SUBSCRIBE command, in which case I believe the second connection is not established.
You can turn off second connection if you don't use redis pub/sub
var config = ConfigurationOptions.Parse(redisConnectionString);
config.CommandMap = CommandMap.Create(new HashSet<string> { "SUBSCRIBE" }, false);
connection = ConnectionMultiplexer.Connect(config);

RabbitMQ AMQP protocol mismatch

ConnectionFactory factory = new ConnectionFactory();
factory.setHost(host);
Connection connection = factory.newConnection();
com.rabbitmq.client.MalformedFrameException: AMQP protocol version mismatch; we are version 0-9-1, server sent signature 1,1,0,10
When I try and create a new RabbitMQ connection I am getting this error. Weirdly I installed the RabbitMQ 2.8.2 server on two different linux boxes and one works and the other one doesnt.
Any ideas?
Does one of the boxes have Apache QPID running on it? That'd explain your version mismatch. RabbitMQ Server currently only goes as far as 0.9.1.