C7: Messaging in the Cloud with IBM MQ 
Light and IBM Bluemix 
Robert Nicholson, STSM for Application Messaging 
@nicholsr #mqlight
© 2014 IBM Corporation 
Please Note 
IBM’s statements regarding its plans, directions, and intent are subject to change or withdrawal 
without notice at IBM’s sole discretion. Information regarding potential future products is 
intended to outline our general product direction and it should not be relied on in making a 
purchasing decision. 
The information mentioned regarding potential future products is not a commitment, promise, or 
legal obligation to deliver any material, code or functionality. Information about potential future 
products may not be incorporated into any contract. The development, release, and timing of any 
future features or functionality described for our products remains at our sole discretion 
Performance is based on measurements and projections using standard IBM benchmarks in a 
controlled environment. The actual throughput or performance that any user will experience 
will vary depending upon many factors, including considerations such as the amount of 
multiprogramming in the user’s job stream, the I/O configuration, the storage configuration, and 
the workload processed. Therefore, no assurance can be given that an individual user will 
achieve results similar to those stated here. 
2
© 2014 IBM Corporation 
Agenda 
Introduction to Bluemix 
Application Messaging 
Introduction to MQ Light Service 
Demo 
3
The next billion 
dollar idea starts 
with a single 
developer. 
That developer 
starts with a single 
line of code 
© 2014 IBM Corporation
IBM BlueMix 
Delivering a Composable Services development environment 
© 2014 IBM Corporation 
Run Your Apps 
The developer can chose any language runtime or 
bring their own. Just upload your code and go. 
DevOps 
Development, monitoring, deployment and 
logging tools allow the developer to run the 
entire application 
APIs and Services 
A catalog of open source, IBM and third party 
APIs services allow a developer to stitch 
together an application in minutes. 
Cloud Integration 
Build hybrid environments. Connect to on-premises 
systems of record plus other public and 
private clouds. Expose your own APIs to your 
developers. 
Built on IBM SoftLayer 
Runs automatically on top of IBM’s leading 
infrastructure as a service. No need to worry 
about provisioning or managing infrastructure.
© 2014 IBM Corporation 
Agenda 
Introduction to Bluemix 
Application Messaging 
Introduction to MQ Light Service 
Demo 
6
© 2014 IBM Corporation 
IBM Messaging portfolio 
7 
Deliver Messaging Backbone for Enterprise 
Focus on traditional MQ values, rock-solid enterprise-class 
service, ease-of-operation, breadth of platform coverage, 
availability, z/OS exploitation 
Capture Big Data from Mobile and Internet of 
Things 
Focus on Internet-scale events, m2m device enablement, 
security and privacy, feed into real-time analytics, location-based 
notifications 
Enable developers to build more scalable, 
responsive applications 
Focus on application developer use cases, breadth of language 
support, no administration, ease-of-deployment, lightweight & 
powerful API, as software or a cloud service
© 2014 IBM Corporation 
MQ Light : Software and Cloud 
 Messaging that application developers will 
love to use, helping them make responsive 
applications that scale easily 
 3 ways to get it: 
– Bluemix service 
– MQ Light software download 
– Statement of Direction for support in MQ Version 8. 
 Open APIs crafted to feel natural in a 
growing range of popular languages 
 Tooling that makes modular app 
development easy 
8
© 2014 IBM Corporation 
The journey that got us here… 
From: 
Centrally planned IT Architecture 
Emerges: 
Business sponsor driven 
Developer led architecture 
Developers select tools to get the job done 
Focused on trying new apps and concepts in 
the market 
Centrally controlled common standards 
Planned projects delivering core systems 
Focused on skills and investment reuse
© 2014 IBM Corporation 
The journey that got us here… 
10 
Ruby 
Python 
Node.js 
C 
Java 
C++ 
C# 
Perl 
Go 
Clojure 
Lua 
Erlang Scala 
PHP
© 2014 IBM Corporation 
Use Cases 
11 
Worker Offload 
Intensive work offloaded and distributed 
amongst worker processes to be performed 
asynchronously 
- Processing images or videos 
- Performing text analytics 
Event Driven 
Take one or more actions when something 
interesting happens 
- Email logs and update dashboards when build finishes 
- Upload videos once finished transcoding
© 2014 IBM Corporation 
Use Cases 
12 
Delayed Processing 
Schedule a task to happen at a specific point in 
time 
- Run in detailed reports when app use is low 
- Generate end of day summary 
3rd Party Integration 
Ensure applications remain responsive even when 
3rd party system are not available or responding 
fast enough 
- Updating existing CRM system 
- Booking appointment
Trend in Cloud Application Architecture 
Data Centre Architecture Cloud – centric Architecture 
13 
© 2014 IBM Corporation 
HTML + Client Side 
javascript 
Business Logic 
HTML + Client Side 
javascript 
Data Data 
Data 
•Test, deploy, operate as a whole. 
•Often Scale monolithic app 
•Powerful integration runtimes. 
•Homogeneous technologies 
Micro services 
•Small empowered dev-ops teams own each 
service. 
•Test, deploy, monitor, operate individual 
services. 
•Polyglot languages & persistence. 
•Services scale automatically as needed. 
Caveat: Oversimplification
Trend in Cloud Application Architecture 
14 
© 2014 IBM Corporation 
Cloud – centric Architecture 
HTML + Client Side 
javascript 
Data 
Data 
Micro services 
Interaction via REST and 
lightweight asynchronous 
messaging.
© 2014 IBM Corporation 
Agenda 
Introduction to Bluemix 
Application Messaging 
Introduction to MQ Light Service 
Demo 
15
Introduction to MQ Light Service 
16 
© 2014 IBM Corporation
MQ Light with Node.js using MQ Light API 
17 
MQ Light 
© 2014 IBM Corporation 
MQ 
Light 
MQ 
Light 
MQ Light API 
.rb 
Community 
support. IBM 
Priority based on 
feedback. 
…… 
.py 
Simple, programming Language neutral messaging model 
Idiomatic language & framework API Mappings 
• Frictionless development 
Open wire protocol (AMQP 1.0) & Open Source client libraries 
• Facilitates community drivers for languages & frameworks
JMS JMS 
© 2014 IBM Corporation 
MQ Light with Java 
JMS 1.1 API 
• Pub/Sub and Queue 
• Local Transactions only. 
• Java SE model 
• Java EE Model including MDBs 
18 
MQ Light
MQ Light 
© 2014 IBM Corporation 
Polyglot Messaging 
19 
MQ 
JMS Light 
.rb 
…… 
Mapping from JMS to MQ Light enables apps using polyglot 
model. 
Worker offload with workers implemented in different 
languages. 
.py
Tooling to assist development 
Used to answer questions like : 
• Where did this message come from? 
• Where did that message go? 
• What messages has my app consumed? 
20 
© 2014 IBM Corporation
MQ Light Messaging Model – Send Messages 
Applications send messages to a topic. 
A topic is an address in the topic space 
either flat or arranged hierarchically. 
21 
© 2014 IBM Corporation 
1. Send (‘/test/a’, “Hello”); 
2. Send (‘/test/a’, “World!”); 
Topic Address Space 
Sender application
MQ Light Messaging Model – Simple Receive 
•Applications receive messages by creating a destination with a pattern 
which matches the topics they are interested in. 
•Pattern matching scheme based on WMQ. 
22 
© 2014 IBM Corporation 
1. Send (‘/test/a’, “Hello”); 
2. Send (‘/test/a’, “World!”); 
1. Hello 
2. World! 
Topic Address Space 
Sender application 
DESTINATION 
Pattern=/test/a
MQ Light Messaging Model – Pub/Sub 
•Multiple destinations can be created which match the same topic 
23 
© 2014 IBM Corporation 
•Pub/Sub style. 
DESTINATION 
1. Send (‘/test/a’, “Hello”); 
2. Send (‘/test/a’, “World!”); 
1. Hello 
2. World! 
1. Hello 
2. World! 
Topic Address Space 
Sender application 
DESTINATION 
Pattern=/test/a 
Pattern=/test/# 
Client 1 
Client 2
MQ Light Messaging Model – Persistent destinations 
•Destinations persist for a defined “time to live” after receiver detaches. 
24 
© 2014 IBM Corporation 
1. Send (‘/test/a’, “Hello”); 
2. Send (‘/test/a’, “World!”); 
Topic Address Space 
Sender application 
Hello 
World! 
DESTINATION 
Pattern=/test/a 
Disconnected client
MQ Light Messaging Model – Sharing 
1. Send (‘/test/a’, “Hello”); DESTINATION 
2. Send (‘/test/a’, “World!”); 
•Clients attaching to the same topic pattern and share name attach to the 
same shared destination. 
25 
© 2014 IBM Corporation 
1. Hello 
2. World! 
1. Hello 
2. World! 
SHARING 
Topic Address Space 
Sender application 
DESTINATION 
Pattern=/test/# 
Pattern=/test/# 
Share=myshare 
Client 1 
Client 2 
Client 3
MQ Light Messaging Model – Client takeover 
26 
© 2014 IBM Corporation 
1. Send (‘/test/a’, “Hello”); 
Hello 
Topic Address Space 
Sender application 
DESTINATION 
Pattern=/test/# 
Client 1 
World! 
Client 1 
2. Send (‘/test/a’, “World!”); 
•Applications connect to MQ Light service specify (optional) client ID. 
•Re-using the same client ID pre-empts the original connection. 
•Ideal for worker takeover in the cloud.
MQ Light Messaging Model 
© 2014 IBM Corporation 
Messages 
• Payload is either Text or Binary. 
• Content-type is used by clients to transfer JSON 
• Per message time to live. 
Message delivery model 
• At most once delivery (QoS 0) 
• At least once delivery (QoS 1) 
• Acknowledge & Reject messages 
• Control over the number of unacknowledged messages 
delivered. (link credit) 
27
MQ Light Node.JS API. 
Installable from NPM 
Promotes a fluent programming style 
Easily wrappable into promises. 
Focussed on code simplicity. 
Client - connect state machine 
• Assists cloud applications. 
28 
© 2014 IBM Corporation 
client.connect() 
.on('connected', function() { 
console.log('Have some random cat names. Have them!'); 
subscribe('/kittens'); 
}) 
.on('disconnected', function() { 
console.log('That's enough for now!'); 
}) 
.on('message', function(data) { 
console.log('Why not call your cat: '+data); 
});
MQ Light Service JMS Support 
Support “Java SE” style messaging. 
• The WMQ classes for JMS now contain a provider service for 
JmsFactoryFactory ff = JmsFactoryFactory.getInstance(JmsConstants.MQLIGHT_BLUEMIX_PROVIDER); 
ConnectionFactory cf = ff.createConnectionFactory(); 
© 2014 IBM Corporation 
Bluemix. 
• Include WMQ Classes & Push the app to bluemix as .jar 
Supports Liberty Profile “JEE” style messaging. 
• Either push a .WAR 
– Resource Adapter injected and JNDI namespace populated by 
Liberty buildpack. 
• Or push a packaged liberty server 
– Supports MDBs 
29
© 2014 IBM Corporation 
Under the covers 
App 
Monitoring & Ops 
Bluemix 
MQ Light service 
Runtime 
Replicated GPFS 
Filesystem 
QM 
QM 
QM 
QM 
QM 
QM 
QM 
QM 
Service 
Lookup 
 MQ V8 Queue Managers with MQ 
Light support. 
 Service architecture uses best practice 
from our enterprise MQ Customers 
 Transformed for the cloud. 
 Reliability and availability underpinned 
by: 
 Multi-instance queue managers 
 Replicated GPFS Fileysystem 
 24x7 Monitoring and Ops 
support. 
 All running in Softlayer 
App
© 2014 IBM Corporation 
Agenda 
Introduction to Bluemix 
Application Messaging 
Introduction to MQ Light Service 
Demo 
31
© 2014 IBM Corporation 
Demo Scenario 
Twitter sentiment analysis 
application. 
Tracks a number of 
“products”. 
32 
Live Twitter feed 
Cumulative interest 
and sentiment 
Relevant tweets
Demo Architecture – Java workers 
MQ Light 
33 
© 2014 IBM Corporation 
Twitter API 
Web UI 
Front end 
node app 
Analytics 
workers 
DESTINATION 
tweets 
Analysed tweets (shared)
Demo Architecture – Node.JS workers 
MQ Light 
34 
© 2014 IBM Corporation 
Twitter API 
Web UI 
Front end 
node app 
Analytics 
workers 
DESTINATION 
tweets 
Analysed tweets (shared)
© 2014 IBM Corporation 
Summary 
 MQ Light : https://developer.ibm.com/messaging/mq-light/ 
 MQ Light for Bluemix : www.bluemix.net 
 Messaging designed for developers to create responsive and scalable applications 
– Simplified messaging API 
– Easy to acquire and incorporate into applications 
– Development focused tooling 
 Range of application deployment options 
– MQ Light 
– IBM MQ [Statement of Direction] 
– MQ Light cloud service in BlueMix 
35
IBM MQ Sessions this week 
10:30 - 12:00 13:15 - 14:15 14:30 - 15:30 16:00 - 17:00 17:15 - 18:15 
© 2014 IBM Corporation 
Tuesday 
Opening General Session- IBM Digital Experience 
and WebSphere Technical University 
Session A31: IBM MQ 
CHLAUTH rules – with 
MQ V8 updates 
Speaker: Morag Hughson 
Room 02 
Session A4: WebSphere MQ 
for z/OS: Performance and 
Accounting 
Speaker: Alexander Ross 
Room 8 
Session I26: DataPower- 
MQ Connectivity Deep Dive 
(Theory) 
Speaker: Robin Wiley 
Room 27 
Session Z1: WebSphere MQ 
for z/OS V8: Latest Features 
Deep Dive 
Speaker: Damon Cross 
Room 6 
9:00 - 10:00 10:30 - 11:30 11:45 - 12:45 14:00 - 15:00 15:15 - 16:15 16:45 - 17:45 
Wednesday 
Session Z5: 
WebSphere MQ for 
z/OS: Security 
Speaker: Damon Cross 
Room 02 
Session A21: What's New 
in IBM Messaging 
Speaker: Morag Hughson 
Room 8 
Session C7: Messaging 
in the Cloud with IBM 
MQ Light and IBM 
Bluemix 
Speaker: Rob Nicholson 
Room 27 
Session A17: Managing work-loads, 
scaling and availability 
with IBM MQ clusters 
Speaker: David Ware 
Room 6 
Lab IL5: DataPower-MQ Connectivity Deep Dive (Hands-On) 
Speaker: Robin Wiley 
Room 7b 
Session A9: WebSphere MQ 
for z/OS: The Inside Story 
Speaker: Damon Cross 
Room 6 
Thursday 
Session A35: How to 
Develop Responsive 
Applications with IBM MQ 
Light 
Speaker: Rob Nicholson 
Room 27 
Session A22: New IBM 
MQ V8 Security 
Features 
Speaker: Morag Hughson 
Room 01 
Session A3: WebSphere MQ 
for z/OS: Shared Queues 
Speaker: Alex Ross 
Room 6 
Session A18: Using Publish 
/Subscribe with IBM MQ 
Speaker: David Ware 
Room 27 
Friday 
Lab AL6: Developing a First Application with IBM 
WebSphere MQ Light 
Speakers: Robert Nicholson, Alex Ross 
Room 7b 
Session A16: Using 
IBM MQ Pub/Sub in an 
MQ network 
Speaker: David Ware 
Room 6
© 2014 IBM Corporation 
Questions? 
37
For Additional Information 
© 2014 IBM Corporation 
 IBM Training 
 http://www.ibm.com/training 
 IBM WebSphere 
 http://www.ibm.com/software/websphere/ 
 http://www.ibm.com/software/products/ibm-mq 
 IBM developerWorks 
 http://www.ibm.com/developerworks/websphere 
 https://www.ibm.com/developerworks/community/blogs/messaging 
 WebSphere forums and community 
 http://www.ibm.com/developerworks/websphere/community/
Your feedback is valuable - please complete your session evaluation 
Either on paper or online at ibmeventconnect.eu/euxdx 
Select Sessions, then Session Finder, and complete the survey 
Thank You 
Session C7: Messaging in the Cloud with IBM MQ Light and IBM Bluemix 
Rob Nicholson 
Senior Technical Staff Member 
Software Group 
rob_nicholson@uk.ibm.com 
+44 1962 817517 
Twitter: nicholsr 
Linkedin: uk.linkedin.com/in/robertbnicholson/

Messaging in the Cloud with IBM MQ Light and IBM Bluemix

  • 1.
    C7: Messaging inthe Cloud with IBM MQ Light and IBM Bluemix Robert Nicholson, STSM for Application Messaging @nicholsr #mqlight
  • 2.
    © 2014 IBMCorporation Please Note IBM’s statements regarding its plans, directions, and intent are subject to change or withdrawal without notice at IBM’s sole discretion. Information regarding potential future products is intended to outline our general product direction and it should not be relied on in making a purchasing decision. The information mentioned regarding potential future products is not a commitment, promise, or legal obligation to deliver any material, code or functionality. Information about potential future products may not be incorporated into any contract. The development, release, and timing of any future features or functionality described for our products remains at our sole discretion Performance is based on measurements and projections using standard IBM benchmarks in a controlled environment. The actual throughput or performance that any user will experience will vary depending upon many factors, including considerations such as the amount of multiprogramming in the user’s job stream, the I/O configuration, the storage configuration, and the workload processed. Therefore, no assurance can be given that an individual user will achieve results similar to those stated here. 2
  • 3.
    © 2014 IBMCorporation Agenda Introduction to Bluemix Application Messaging Introduction to MQ Light Service Demo 3
  • 4.
    The next billion dollar idea starts with a single developer. That developer starts with a single line of code © 2014 IBM Corporation
  • 5.
    IBM BlueMix Deliveringa Composable Services development environment © 2014 IBM Corporation Run Your Apps The developer can chose any language runtime or bring their own. Just upload your code and go. DevOps Development, monitoring, deployment and logging tools allow the developer to run the entire application APIs and Services A catalog of open source, IBM and third party APIs services allow a developer to stitch together an application in minutes. Cloud Integration Build hybrid environments. Connect to on-premises systems of record plus other public and private clouds. Expose your own APIs to your developers. Built on IBM SoftLayer Runs automatically on top of IBM’s leading infrastructure as a service. No need to worry about provisioning or managing infrastructure.
  • 6.
    © 2014 IBMCorporation Agenda Introduction to Bluemix Application Messaging Introduction to MQ Light Service Demo 6
  • 7.
    © 2014 IBMCorporation IBM Messaging portfolio 7 Deliver Messaging Backbone for Enterprise Focus on traditional MQ values, rock-solid enterprise-class service, ease-of-operation, breadth of platform coverage, availability, z/OS exploitation Capture Big Data from Mobile and Internet of Things Focus on Internet-scale events, m2m device enablement, security and privacy, feed into real-time analytics, location-based notifications Enable developers to build more scalable, responsive applications Focus on application developer use cases, breadth of language support, no administration, ease-of-deployment, lightweight & powerful API, as software or a cloud service
  • 8.
    © 2014 IBMCorporation MQ Light : Software and Cloud  Messaging that application developers will love to use, helping them make responsive applications that scale easily  3 ways to get it: – Bluemix service – MQ Light software download – Statement of Direction for support in MQ Version 8.  Open APIs crafted to feel natural in a growing range of popular languages  Tooling that makes modular app development easy 8
  • 9.
    © 2014 IBMCorporation The journey that got us here… From: Centrally planned IT Architecture Emerges: Business sponsor driven Developer led architecture Developers select tools to get the job done Focused on trying new apps and concepts in the market Centrally controlled common standards Planned projects delivering core systems Focused on skills and investment reuse
  • 10.
    © 2014 IBMCorporation The journey that got us here… 10 Ruby Python Node.js C Java C++ C# Perl Go Clojure Lua Erlang Scala PHP
  • 11.
    © 2014 IBMCorporation Use Cases 11 Worker Offload Intensive work offloaded and distributed amongst worker processes to be performed asynchronously - Processing images or videos - Performing text analytics Event Driven Take one or more actions when something interesting happens - Email logs and update dashboards when build finishes - Upload videos once finished transcoding
  • 12.
    © 2014 IBMCorporation Use Cases 12 Delayed Processing Schedule a task to happen at a specific point in time - Run in detailed reports when app use is low - Generate end of day summary 3rd Party Integration Ensure applications remain responsive even when 3rd party system are not available or responding fast enough - Updating existing CRM system - Booking appointment
  • 13.
    Trend in CloudApplication Architecture Data Centre Architecture Cloud – centric Architecture 13 © 2014 IBM Corporation HTML + Client Side javascript Business Logic HTML + Client Side javascript Data Data Data •Test, deploy, operate as a whole. •Often Scale monolithic app •Powerful integration runtimes. •Homogeneous technologies Micro services •Small empowered dev-ops teams own each service. •Test, deploy, monitor, operate individual services. •Polyglot languages & persistence. •Services scale automatically as needed. Caveat: Oversimplification
  • 14.
    Trend in CloudApplication Architecture 14 © 2014 IBM Corporation Cloud – centric Architecture HTML + Client Side javascript Data Data Micro services Interaction via REST and lightweight asynchronous messaging.
  • 15.
    © 2014 IBMCorporation Agenda Introduction to Bluemix Application Messaging Introduction to MQ Light Service Demo 15
  • 16.
    Introduction to MQLight Service 16 © 2014 IBM Corporation
  • 17.
    MQ Light withNode.js using MQ Light API 17 MQ Light © 2014 IBM Corporation MQ Light MQ Light MQ Light API .rb Community support. IBM Priority based on feedback. …… .py Simple, programming Language neutral messaging model Idiomatic language & framework API Mappings • Frictionless development Open wire protocol (AMQP 1.0) & Open Source client libraries • Facilitates community drivers for languages & frameworks
  • 18.
    JMS JMS ©2014 IBM Corporation MQ Light with Java JMS 1.1 API • Pub/Sub and Queue • Local Transactions only. • Java SE model • Java EE Model including MDBs 18 MQ Light
  • 19.
    MQ Light ©2014 IBM Corporation Polyglot Messaging 19 MQ JMS Light .rb …… Mapping from JMS to MQ Light enables apps using polyglot model. Worker offload with workers implemented in different languages. .py
  • 20.
    Tooling to assistdevelopment Used to answer questions like : • Where did this message come from? • Where did that message go? • What messages has my app consumed? 20 © 2014 IBM Corporation
  • 21.
    MQ Light MessagingModel – Send Messages Applications send messages to a topic. A topic is an address in the topic space either flat or arranged hierarchically. 21 © 2014 IBM Corporation 1. Send (‘/test/a’, “Hello”); 2. Send (‘/test/a’, “World!”); Topic Address Space Sender application
  • 22.
    MQ Light MessagingModel – Simple Receive •Applications receive messages by creating a destination with a pattern which matches the topics they are interested in. •Pattern matching scheme based on WMQ. 22 © 2014 IBM Corporation 1. Send (‘/test/a’, “Hello”); 2. Send (‘/test/a’, “World!”); 1. Hello 2. World! Topic Address Space Sender application DESTINATION Pattern=/test/a
  • 23.
    MQ Light MessagingModel – Pub/Sub •Multiple destinations can be created which match the same topic 23 © 2014 IBM Corporation •Pub/Sub style. DESTINATION 1. Send (‘/test/a’, “Hello”); 2. Send (‘/test/a’, “World!”); 1. Hello 2. World! 1. Hello 2. World! Topic Address Space Sender application DESTINATION Pattern=/test/a Pattern=/test/# Client 1 Client 2
  • 24.
    MQ Light MessagingModel – Persistent destinations •Destinations persist for a defined “time to live” after receiver detaches. 24 © 2014 IBM Corporation 1. Send (‘/test/a’, “Hello”); 2. Send (‘/test/a’, “World!”); Topic Address Space Sender application Hello World! DESTINATION Pattern=/test/a Disconnected client
  • 25.
    MQ Light MessagingModel – Sharing 1. Send (‘/test/a’, “Hello”); DESTINATION 2. Send (‘/test/a’, “World!”); •Clients attaching to the same topic pattern and share name attach to the same shared destination. 25 © 2014 IBM Corporation 1. Hello 2. World! 1. Hello 2. World! SHARING Topic Address Space Sender application DESTINATION Pattern=/test/# Pattern=/test/# Share=myshare Client 1 Client 2 Client 3
  • 26.
    MQ Light MessagingModel – Client takeover 26 © 2014 IBM Corporation 1. Send (‘/test/a’, “Hello”); Hello Topic Address Space Sender application DESTINATION Pattern=/test/# Client 1 World! Client 1 2. Send (‘/test/a’, “World!”); •Applications connect to MQ Light service specify (optional) client ID. •Re-using the same client ID pre-empts the original connection. •Ideal for worker takeover in the cloud.
  • 27.
    MQ Light MessagingModel © 2014 IBM Corporation Messages • Payload is either Text or Binary. • Content-type is used by clients to transfer JSON • Per message time to live. Message delivery model • At most once delivery (QoS 0) • At least once delivery (QoS 1) • Acknowledge & Reject messages • Control over the number of unacknowledged messages delivered. (link credit) 27
  • 28.
    MQ Light Node.JSAPI. Installable from NPM Promotes a fluent programming style Easily wrappable into promises. Focussed on code simplicity. Client - connect state machine • Assists cloud applications. 28 © 2014 IBM Corporation client.connect() .on('connected', function() { console.log('Have some random cat names. Have them!'); subscribe('/kittens'); }) .on('disconnected', function() { console.log('That's enough for now!'); }) .on('message', function(data) { console.log('Why not call your cat: '+data); });
  • 29.
    MQ Light ServiceJMS Support Support “Java SE” style messaging. • The WMQ classes for JMS now contain a provider service for JmsFactoryFactory ff = JmsFactoryFactory.getInstance(JmsConstants.MQLIGHT_BLUEMIX_PROVIDER); ConnectionFactory cf = ff.createConnectionFactory(); © 2014 IBM Corporation Bluemix. • Include WMQ Classes & Push the app to bluemix as .jar Supports Liberty Profile “JEE” style messaging. • Either push a .WAR – Resource Adapter injected and JNDI namespace populated by Liberty buildpack. • Or push a packaged liberty server – Supports MDBs 29
  • 30.
    © 2014 IBMCorporation Under the covers App Monitoring & Ops Bluemix MQ Light service Runtime Replicated GPFS Filesystem QM QM QM QM QM QM QM QM Service Lookup  MQ V8 Queue Managers with MQ Light support.  Service architecture uses best practice from our enterprise MQ Customers  Transformed for the cloud.  Reliability and availability underpinned by:  Multi-instance queue managers  Replicated GPFS Fileysystem  24x7 Monitoring and Ops support.  All running in Softlayer App
  • 31.
    © 2014 IBMCorporation Agenda Introduction to Bluemix Application Messaging Introduction to MQ Light Service Demo 31
  • 32.
    © 2014 IBMCorporation Demo Scenario Twitter sentiment analysis application. Tracks a number of “products”. 32 Live Twitter feed Cumulative interest and sentiment Relevant tweets
  • 33.
    Demo Architecture –Java workers MQ Light 33 © 2014 IBM Corporation Twitter API Web UI Front end node app Analytics workers DESTINATION tweets Analysed tweets (shared)
  • 34.
    Demo Architecture –Node.JS workers MQ Light 34 © 2014 IBM Corporation Twitter API Web UI Front end node app Analytics workers DESTINATION tweets Analysed tweets (shared)
  • 35.
    © 2014 IBMCorporation Summary  MQ Light : https://developer.ibm.com/messaging/mq-light/  MQ Light for Bluemix : www.bluemix.net  Messaging designed for developers to create responsive and scalable applications – Simplified messaging API – Easy to acquire and incorporate into applications – Development focused tooling  Range of application deployment options – MQ Light – IBM MQ [Statement of Direction] – MQ Light cloud service in BlueMix 35
  • 36.
    IBM MQ Sessionsthis week 10:30 - 12:00 13:15 - 14:15 14:30 - 15:30 16:00 - 17:00 17:15 - 18:15 © 2014 IBM Corporation Tuesday Opening General Session- IBM Digital Experience and WebSphere Technical University Session A31: IBM MQ CHLAUTH rules – with MQ V8 updates Speaker: Morag Hughson Room 02 Session A4: WebSphere MQ for z/OS: Performance and Accounting Speaker: Alexander Ross Room 8 Session I26: DataPower- MQ Connectivity Deep Dive (Theory) Speaker: Robin Wiley Room 27 Session Z1: WebSphere MQ for z/OS V8: Latest Features Deep Dive Speaker: Damon Cross Room 6 9:00 - 10:00 10:30 - 11:30 11:45 - 12:45 14:00 - 15:00 15:15 - 16:15 16:45 - 17:45 Wednesday Session Z5: WebSphere MQ for z/OS: Security Speaker: Damon Cross Room 02 Session A21: What's New in IBM Messaging Speaker: Morag Hughson Room 8 Session C7: Messaging in the Cloud with IBM MQ Light and IBM Bluemix Speaker: Rob Nicholson Room 27 Session A17: Managing work-loads, scaling and availability with IBM MQ clusters Speaker: David Ware Room 6 Lab IL5: DataPower-MQ Connectivity Deep Dive (Hands-On) Speaker: Robin Wiley Room 7b Session A9: WebSphere MQ for z/OS: The Inside Story Speaker: Damon Cross Room 6 Thursday Session A35: How to Develop Responsive Applications with IBM MQ Light Speaker: Rob Nicholson Room 27 Session A22: New IBM MQ V8 Security Features Speaker: Morag Hughson Room 01 Session A3: WebSphere MQ for z/OS: Shared Queues Speaker: Alex Ross Room 6 Session A18: Using Publish /Subscribe with IBM MQ Speaker: David Ware Room 27 Friday Lab AL6: Developing a First Application with IBM WebSphere MQ Light Speakers: Robert Nicholson, Alex Ross Room 7b Session A16: Using IBM MQ Pub/Sub in an MQ network Speaker: David Ware Room 6
  • 37.
    © 2014 IBMCorporation Questions? 37
  • 38.
    For Additional Information © 2014 IBM Corporation  IBM Training  http://www.ibm.com/training  IBM WebSphere  http://www.ibm.com/software/websphere/  http://www.ibm.com/software/products/ibm-mq  IBM developerWorks  http://www.ibm.com/developerworks/websphere  https://www.ibm.com/developerworks/community/blogs/messaging  WebSphere forums and community  http://www.ibm.com/developerworks/websphere/community/
  • 39.
    Your feedback isvaluable - please complete your session evaluation Either on paper or online at ibmeventconnect.eu/euxdx Select Sessions, then Session Finder, and complete the survey Thank You Session C7: Messaging in the Cloud with IBM MQ Light and IBM Bluemix Rob Nicholson Senior Technical Staff Member Software Group rob_nicholson@uk.ibm.com +44 1962 817517 Twitter: nicholsr Linkedin: uk.linkedin.com/in/robertbnicholson/