What is most valuable?
For us, the most valuable feature is the fact that we can move data from disparate systems quite easily. It's not a mountain of data for us, because of the nature of our business, but it's critical that we move information through the queues, from many varying different systems.
How has it helped my organization?
It makes it much easier to have people from different experience levels be able to interface with one another, without having to be cross-trained on many different platforms. A business benefit is, it can take somebody who's a Windows guy or a Linux guy, and he can fully communicate with the z/OS system, or vice versa, without having to have that extra knowledge of those other systems.
What needs improvement?
For our internal systems and connecting things together, it works really well. If we're trying to connect to something in the web or other things, we don't use it, because we feel that REST or other APIs are more easily adaptable to that environment. Perhaps; I'm not even sure how MQ could do that.
For instance, one of the things we do is, we collect social media data; the public APIs. We're doing a REST call; we're getting back a JSON object. If there was a way that we could do that, perhaps with MQ; set up a way that it could go out, collect the information that we need, and bring it back as a queue, as opposed to a JSON object. That might be something beneficial.
What do I think about the stability of the solution?
Stability is a hallmark of the product. It's extremely reliable. We set up a queue and we say, “Go,” and we have virtually zero issues with it. Considering that it's interfacing with multiple different products, it's remarkably reliable.
It's one of those things where, if somebody says there's a problem, you're like, "What? That can't be possible." We really haven't really had any outages to speak of.
What do I think about the scalability of the solution?
We don't have a tremendous transaction volume, but obviously, the scalability is a factor that many large organizations would have to work on. I think that the transaction volume, in some of the testing we've done for performance and things like that, have shown that is a very, extremely reliable product at scale.
How are customer service and technical support?
I'm not sure that we've really had to use technical support for WebSphere MQ. We’ve figured out how to do it. We've known how to use MQ, set up queues and so on, for a long time. They interface well with our products. We really don't need the support, which I guess is a hallmark of how simple it is to use the product.
We might have had some issues with installation, or some initial setup calls. Once it's gone live, we've really not had to ask for help, had a queue break, or had transmissions not happen.
Which solution did I use previously and why did I switch?
We've had MQ for a long, long time. It was something that we've always supported.
How was the initial setup?
The people on my team were involved in the initial setup, absolutely. There was a little bit of complexity involved with the mainframe section, around some general ways that the thing is implemented in the system, and things that have to happen early on during the IPL and some other processes that we have. That's the part I'm most familiar with. The other platforms it's run on, I'm not sure.
In general, once we got through some of those issues, it was pretty straightforward.
What other advice do I have?
If you have a lot of internal systems that you rely on passing queue transactional data, and queuing data back and forth between a lot of systems, it's definitely a very reliable, very robust, very easy-to-use product. It's a very eloquent way of providing a solution to the problem of having disparate systems talk to each other.
I think it's a very stable product. It works well. It does exactly what you think it's going to do. It scales well. It's easy for the application people that use it to identify with it, and know what they're doing. My rating is primarily based on all those things, and the reliability.
Honestly, selecting a vendor to work with is different than how we chose a product, in general. Pricing is always an option, but stability, support, the willingness of the vendor to cooperate if you need help, and other things like that are important. It's different than it was a long time ago. Most of the time now, you deal with the fact that companies have only been around for a few years.
It used to be that somebody had to be around 10 or 15 years before you would invest in it and believe in it. Now, very strong companies have only been around for one or two years, and have very vibrant products. When dealing with a vendor, it's how willing they are to listen to the customer; how dynamic they can be in enhancing their products; how quickly they can implement features and functions into their products; how strong their support is if you do have problems; and how well the product operates without having an intense learning curve, or a lot of training necessary. It's how elegantly the vendor delivered the product, the documentation; all those things kind of speak to the vendor themselves.
We don't directly use MQ for cloud, mobile, and devices as part of the internet of things. We use direct REST calls. We use z/OS Connect and other mainframe-related REST services. We're generating APIs in order to connect to the internet, and to connect to cloud-based services.