Compose for RabbitMQ support for WebSocket - ibm-cloud

Is Compose for RabbitMQ integrated with WebSocket? That would require the STOMP plugin to be activated.

You can request that the STOMP plugin is enabled by raising a support ticket.

Related

Pivotal Web Services and Kafka service

I have registered in Pivotal Web Services and do not see the Kafka service there. Is it available for a free trial plan ? How to use Kafka message broker with Pivotal Web Services?
At the time of me writing this, there is no Kafka service in the Pivotal Web Services marketplace. You can see the list of services that are publicly available here.
https://docs.run.pivotal.io/marketplace/services/
If you want to use Kafka with your apps, you'd need to bring your own service or use a third party service provider that's outside of the marketplace.
https://community.pivotal.io/s/article/Am-I-restricted-to-using-service-providers-that-are-in-the-Marketplace

is it possible to integration solace with vertx?

for our project to be successfully migrated to vertx, we need to integrate with Solace, is it possible? can any one point me to examples?
From http://vertx.io/docs/, it looks like you can simply connect to Solace via the MQTT or AMQP protocol.
Examples are just listed from their website:
https://github.com/vert-x3/vertx-examples/tree/master/mqtt-examples
https://github.com/vert-x3/vertx-examples/tree/master/amqp-bridge-examples

How to monitor ActiveMQ Artemis

I'm doing some testing with RabbitMQ, ActiveMQ "Classic" and ActiveMQ Artemis in a Windows .NET environment. RabbitMQ and ActiveMQ "Classic" ship with a web interface where you can see information about your broker, queues, messages etc., but ActiveMQ Artemis does not. I really want to be able to monitor my ActiveMQ Artemis broker in a web interface or at the very least with some cmd/PowerShell commands.
I've read on this page about some third-party tools that can be used to monitor an ActiveMQ instance and I assumed that it also applied to Artemis. Unfortunately, I have not been able to get these third-party tools to work. Some of them don't seem to work well on Windows and some are old/inactive.
My clients are communicating with the brokers through NMS (.NET Messaging API) in C#. If anyone has been able to monitor their Artemis broker, especially on a Windows machine, please let me know how you did it!
EDIT:
I have managed to communicate with the Jolokia REST API now. With a GET request to:
http://username:password#localhost:8161/jolokia/read/org.apache.activemq.artemis:*
I am able to see a bunch of information about my queues such as messages added and consumed. This is nice information that will help me but I would like information about current memory usage and disk usage.
Take a look at the Management chapter of the Artemis manual. As far as I know, the following options are available to you
JMX (Java Management Service)
JMX is a Java API for managing Java servers. There are multiple GUIs that connect to java servers via JMX. The most notable being jConsole. There is a list of other GUIs here or there, or you could build your own
jConsole
jConsole is a GUI application that you can connect to a JMX enabled server. It is a part of the Java JDK, so you probably have it installed already.
Jolokia
Jolokia, tutorial, is a JSON API layer over JMX. It makes the JMX interface accessible over HTTP(S). You may query the information using any HTTP client library. You already figured out this in your question. Again, there are GUIs on top of that, the most notable being
Hawt.io Artemis plugin
Hawt.io is an Angular.js management console. It can be thought of as a GUI for Jolokia.
Artemis 2.6 and newer
Hawt.io plugin is built in, no extra setup necessary.
Artemis 1
There is a hawt.io plugin for Artemis made by Red Hat. Compile the plugin and get a .war file. Artemis contains a built-in Jetty webserver. You need put that war to apache-artemis-1.3.0/web. You also need to download hawtio-default.war from http://hawt.io/getstarted/index.html to the same directory. Then, in the instance directory, edit etc/bootstrap.xml and add these wars to config.
Or you can get Red Hat AMQ 7, currently in Alpha, which has the management plugin built in. Start it up and go to localhost:8161/hawtio. I work for a company that sells that product.
Prometheus and Grafana
There is a repository and an accompanying blogpost that describes Prometheus and Grafana setup with ActiveMQ Artemis, all running in OpenShift.
The jmx exporter for Prometheus contains example config for Artemis 2 to get started.
The simplest and easiest way to monitor the broker is with the ActiveMQ Artemis web console. This was added back in 2.3.0 (released in September 2017). At that time it was based on Hawtio 1, but it was recently updated to Hawtio 2.
The most powerful and flexible way to monitor the broker is to use a metrics plugin. Metrics plugins allow integration with specialized monitoring tools like CloudWatch, Datadog, Dynatrace, Elastic, Prometheus, etc. A Prometheus metrics plugin implementation is available. That combined with a Grafana dashboard for visualization and alerting is very powerful.

Runtime topic subscription in WSO2 ESB using JMS

I have a topic in the WSO2 ESB 4.6.0 that I want to create subscriptions to at runtime using JMS, to allow pub-sub.
It is documented that the event-broker in 4.6.0 is based on Apache Qpid, however, it doesn't appear to be bundled. By default, an in-memory event broker is configured.
http://docs.wso2.org/wiki/display/ESB460/Eventing
I am using ActiveMQ as my JMS message broker, however, if required, it is possible to change to Qpid.
Has anyone managed to get this working?
Yes. You can use apache Qpid as your JMS broker with WSO2 ESB. It has been tested in production enviornments as well. You can follow the same steps as mentioned in the samples which uses ActiveMQ as the JMS broker.

JMS queue in websphere

We are currently using JMS queue in Weblogic.
Can we use same JMS queue in Websphere as part of weblogic to websphere migration.
Is there any other concept available in websphere which can replace JMS queue?
WebSphere Application Server has a built-in JMS provider, due to the Java EE standard which defines it as mandatory (as Arjan Tijms already stated).
Setting up the JMS provider requires a so called Service Integration Bus, which is a simple Messaging Bus inside WebSphere. The Service Integration Bus also allows to setup High Available JMS queues/topics when using WebSphere Application Server Network Deployment.
Using this queues/topics outside of a WebSphere context - by putting messages into the queues from external clients or reading them from external clients - is hard.
Mainly due to the WebSphere internal CORBA communication it is quite tricky to setup a working and stable
configuration - and you need to know some internal WebSphere tricks.
My recommandation is to use internal jms configuration only for applications which are deployed on the same WebSphere Application Server-Configuration.
If you really need external access to the JMS queues/topics, you should write a adapter to access it.
This blog post describes in detail how to setup a simple WebSphere internal JMS configuration.
WebSphere has indeed an internal JMS provider. It's accessed using the SIB (Service Integration Bus). See http://www.packtpub.com/article/messaging-with-websphere-application-server-7.0-part1
WepSphere has JMS queues as well. Are you wanting to have the queue running within WebSphere, or are you trying to point to a queue running elsewhere?
Yes, you can.
Configuration depends on your JMS System.
If your JMS Middleware is running external like ApacheMQ or Swift JMS, you can normally install an Resource Adapter and then use that specific configuration (at least for the Jms configuration). Then you can use Websphere's JMS Configuration (like Queues and Topics) and therefor your normal MDB configuration.
Besides ActivationSpec (like above) at least with Websphere MQ you could use Listener Ports. I don't know if Listener Ports are available for other JMS Products.
If you want to use a built in Messaging System, you can use SIB I guess.
So plenty of options depending on your System.
A JMS provider is mandated by the Java EE specs so every application server has an inbuilt JMS Provider.
You have to make the right calls about your application needs. There might be valid reasons to use an external JMS provider such as WebSphere MQ.