broker-plugin | client apps and WP-based servers | OAuth library
kandi X-RAY | broker-plugin Summary
kandi X-RAY | broker-plugin Summary
A broker between client apps and WP-based servers for OAuth bootstrapping.
Support
Quality
Security
License
Reuse
Top functions reviewed by kandi - BETA
- Handle a Connect request .
- Issue a post .
- Send the details to the broker .
- Get the list of known brokers .
- Adds a link to the index .
- Get Connect information .
broker-plugin Key Features
broker-plugin Examples and Code Snippets
Community Discussions
Trending Discussions on broker-plugin
QUESTION
I am trying to setup simple cluster of 2 ActiveMQ Artemis brokers within Docker Swarm environment.
Stack configuration
...ANSWER
Answered 2022-Mar-18 at 13:53The connector
named "netty_connector" shouldn't use 0.0.0.0
. This is the address that will be sent to other nodes in the cluster to tell them how to connect back to the node who sent it. The address 0.0.0.0
will be meaningless in that context. It needs to be the actual IP address or hostname where the broker is listening for network connections.
QUESTION
I have ActiveMQ Artemis 2.8.1 running and get the following error when I try to connect to it using a Spring Boot application over SSL.
...ANSWER
Answered 2022-Feb-04 at 16:40There is definitely a problem with your configuration. The error message even says so:
QUESTION
I am having a large cluster of Confluent Kafka comprising of multiple sub-clusters One for Zookeeper, another for Kafka broker with Schema Registry and KSQL streams And one cluster for Connect.
My connect cluster is having issues since I have configured the rest.advertised.host.name for all of my worker instances to FQDN as per the article here -
Following are the errors I am continously seeing in the connect distributed log files on all nodes -
connectDistributed.out
Error 1-
...ANSWER
Answered 2021-Aug-13 at 11:36What actually happened!
On the Connect cluster this appears when all nodes on the cluster have entered into what Confluent calls a 'STOP-THE-WORLD' event of heavy re-balancing.
Which essentially means no matter how many connector workers / tasks were running on the cluster before, they all stop processing whatever they were before and jump into re-balancing mode fighting for a leader.
Why it happened!
One of your Connect worker properties file is set to this -> connect.protocol=compatible
OR
Some other major change in the connect worker properties or worker restart without pausing the running tasks first
Solution
QUESTION
I'm using ActiveMQ Artemis 2.18.0. Firstly I configured setup with SSL and artemis was starting without errors then I wanted to test my setup without SSL, I removed all SSL related settings from broker.xml
and bootstrap.xml
and now when I trying to run Artemis I'm getting this:
ANSWER
Answered 2021-Oct-13 at 09:59ActiveMQ Artemis is failing because the bind attribute of the web element is using the HTTPS protocol:
QUESTION
I have running Artemis version 2.17.0 replica set with master and two slaves. It works fine when I check "Broker diagram" view in the web console I see connection between master and slave (the other slave as a backup) as on the picture
I upgraded now Artemis to 2.18.0 version and after restarting all artemis brokers when I check "Broker diagram" I see only master node and there is no link to the slave like on the picture above. The other two nodes are running as a slaves so there is only one master.
As I said on Artemis-2.17.0 it works.
Someone knows why is that ? here is for example the broker.xml
for master node
ANSWER
Answered 2021-Aug-25 at 17:17I set up a simple pair of brokers using replication and the "Broker Diagram" displays both the master and the slave as expected: Ensure you have the "Show Backup Brokers" checkbox selected.
Regarding the SSL issue, see the upgrade instructions for 2.18.0 in the documentation:
...core clients will now expect the
CN
or Subject Alternative Name values of the broker's SSL certificate to match the hostname in the client's URL....
To deal with this you can do one of the following:
Update your SSL certificates to use a hostname which matches the hostname in the client's URL. This is the recommended option with regard to security.
Update any connector using
sslEnabled=true
to also useverifyHost=false
. Using this option means that you won't get the extra security of hostname verification, but no certificates will need to change. This essentially restores the previous default behavior.
QUESTION
I'm running Apache ActiveMQ Artemis 2.17.0 inside VM for a month now and just noticed that after around 90 always connected MQTT clients Artemis broker is not accepting new connections. I need Artemis to support at least 200 MQTT clients.
What could be the reason for that? How can I remove this "limit"? Could the VM resources like low memory be causing this?
After restarting Artemis service, all connection are dropped, and I'm able to connect again.
I was receiving this message in logs:
...ANSWER
Answered 2021-Jun-05 at 14:53ActiveMQ Artemis has no default connection limit. I just wrote a quick test based on this which uses the Paho 1.2.5 MQTT client. It spun up 500 concurrent connections using both normal TCP and WebSockets. The test finished in less than 20 seconds with no errors. I'm just running this test on my laptop.
I noticed that your journal-buffer-timeout
is 700000
which seems quite high which means you have a very low write speed of 1.43 writes per millisecond (i.e. a slow disk). The journal-buffer-timeout
that is calculated, for example, on my laptop is 4000
which translates into a write-speed of 250 which is significantly faster than yours. My laptop is nothing special, but it does have an SSD. That said, SSDs are pretty common. If this low write-speed is indicative of the overall performance of your VM it may simply be too weak to handle the load you want. To be clear, this value isn't related directly to MQTT connections. It's just something I noticed while reviewing your configuration that may be indirect evidence of your issue.
The journal-buffer-timeout
value is calculated and configured automatically when the instance is created. You can re-calculate this value later and configure it manually using the bin/artemis perf-journal
command.
Ultimately, your issue looks environmental to me. I recommend you inspect your VM and network. TCP dumps may be useful to see perhaps how/why the connection is being reset. Thread dumps from the server during the time of the trouble would also be worth inspecting.
QUESTION
I am setting up a cluster of Artemis in Kubernetes with 3 group of master/slave:
...ANSWER
Answered 2021-May-11 at 23:49First, it's important to note that there's no feature to make a client reconnect to the broker from which it disconnected after the client crashes/restarts. Generally speaking the client shouldn't really care about what broker it connects to; that's one of the main goals of horizontal scalability.
It's also worth noting that if the number of messages on the brokers and the number of connected clients is low enough that this condition arises frequently that almost certainly means you have too many brokers in your cluster.
That said, I believe the reason that your client isn't getting the messages it expects is because you're using the default redistribution-delay
(i.e. -1
) which means messages will not be redistributed to other nodes in the cluster. If you want to enable redistribution (which is seems like you do) then you should set it to >= 0, e.g.:
QUESTION
We're using ActiveMQ Artemis 2.8.1 with MQTT.
We integrated ActiveMQ Artemis with Wildfly. Consider our server connects using client id SAM
on 50 topics. On checking Artemis with JConsole we can see that each client subscription results in a queue whose name follows the pattern _
. In my case consider topic as com/api/output
which means the subscription queue name will be SAM_com/api/output
. Likewise there will be 50 other subscription queues using the same naming pattern (i.e. SAM_
).
My findings
Based on my research each queue is used to store messages sent to that topic for each client's subscription. For example, when the same topic (e.g 1/2/3
) is subscribed to by 3 different clients (e.g A
,B
,& C
) then there will be 3 subscription queues (i.e. A_1/2/3
, B_1/2/3
, & C_1/2/3
). Therefore when a message is sent to the topic 1/2/3
Artemis will put that messages in the subscription queues A_1/2/3
,B_1/2/3
, C_1/2/3
.
Actual problem
Now same client wants to connect to broker with different client id now (e.g. TOM
). My Client initiates connection drop and Artemis also recognizes connection drop, then my client connects to broker with new client id (TOM
) for the same 50 topics. Now there will be 100 subscription queue total with each topic having 2 (i.e. one for each clientid - SAM
& TOM
). I find the reason that SAM
queues are maintained because while initiating the connection we use cleanSession
as false
. So all those subscription queues will be durable, hence the queues are maintained even if the client is disconnected.
When a message is sent to the topic it will be put in two queues (SAM
& TOM
). Our client is connected to broker with client id TOM
so the TOM
queue has consumer which results in all the TOM
queue messages being consumed by the client. However, the SAM
queue accumulates messages and eats up all JVM's heapspace until the server dies.
The purpose of durable queues is to maintain the message even when the client disconnects, but is there any way to tell ActiveMQ Artemis to purge the client's queues and messages if client doesn't show up for certain time period or to purge the messages from the client's subscription queue when client drops the connection?
Our broker.xml
...ANSWER
Answered 2021-Jan-11 at 15:46It's really up to the subscriber to delete its subscription when it is done with it. In other words, the MQTT client should unsubscribe the existing subscriber before creating a new one. The broker has no way to know whether or not the subscriber plans to reconnect later to fetch the messages from its subscription.
If you really want the broker to delete the subscription queue you can use the following address-settings:
: This must be
true
.: This is the delay (in milliseconds) from the time the last consumer disconnects until the broker deletes the subscription queue.
: This must be
-1
in order to ignore any messages in the subscription queue.
To be clear, I would recommend against this configuration as the broker may inadvertently delete legitimate messages. For example, if a subscriber mistakenly disconnects (e.g. due to a network failure, hardware failure, JVM crash, etc.) for longer than the configured then the broker will delete its subscription queue and all the subscriber's messages will effectively be lost.
QUESTION
I have two pods one is my ArtemisMQ pod and another is a consumer service. I have ingress set up so that I can access the console which works, but the issue comes down to when my consumer pod is trying to access port 61616 for connections.
The error I get from my consumer pod
...ANSWER
Answered 2020-Sep-08 at 03:00Using 0.0.0.0
for a connector is not valid. In fact, there should be a WARN
level message in the log about it. Your cluster will not form properly with such a configuration. You need to use a hostname or IP address that other hosts can use to reach the broker that broadcasts it. That's the whole point of the broadcast-group
- to tell other brokers who may be listening how they can connect to it.
Community Discussions, Code Snippets contain sources that include Stack Exchange Network
Vulnerabilities
No vulnerabilities reported
Install broker-plugin
Support
Reuse Trending Solutions
Find, review, and download reusable Libraries, Code Snippets, Cloud APIs from over 650 million Knowledge Items
Find more librariesStay Updated
Subscribe to our newsletter for trending solutions and developer bootcamps
Share this Page