MQ Light for WTU

44
A35: IBM MQ Light Robert Nicholson, STSM for Application Messaging @nicholsr #mqlight

description

session A35: from WebSphere Technical University

Transcript of MQ Light for WTU

Page 1: MQ Light for WTU

A35: IBM MQ LightRobert Nicholson, STSM for Application Messaging

@nicholsr #mqlight

Page 2: MQ Light for WTU

© 2014 IBM Corporation

Please NoteIBM’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

Page 3: MQ Light for WTU

© 2014 IBM Corporation

IBM Messaging portfolio

3

Deliver Messaging Backbone for EnterpriseFocus 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 ThingsFocus 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 applicationsFocus on application developer use cases, breadth of language support, no administration, ease-of-deployment, lightweight & powerful API, as software or a cloud service

Page 4: MQ Light for WTU

© 2014 IBM Corporation

MQ Light : Software and Cloud

Messaging that application developers will love to use, helping them make responsive applications that scale easily

Available as software download or full cloud service in Bluemix.

– Statement of Direction for support in MQ Version 8.

Trivial to get started : just download, unzip and start coding

Open APIs crafted to feel natural in a growing range of popular languages

Tooling that makes modular app development easy

4

Page 5: MQ Light for WTU

© 2014 IBM Corporation

The journey that got us here…

Previous developer / IT relationship– Driven by centrally controlled common standards– Carefully planned projects delivering core business systems– Focused on re-using existing skills and investments

5

Share, re-use and save!

I need to access some messaging services. I own the apps.

Page 6: MQ Light for WTU

© 2014 IBM Corporation

The journey that got us here…

Evolving developer / IT relationship– Driven by business sponsor demands– Developers download and use the tools to get the job done– Focused on trying new apps and concepts in the market

6

Page 7: MQ Light for WTU

© 2014 IBM Corporation

The journey that got us here…

7

Ruby

Node.js

Python

C

C++

Java

C#

Perl

Go

Clojure

Lua

Erlang Scala

PHP

Page 8: MQ Light for WTU

© 2014 IBM Corporation

Use Cases

8

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

Worker Offload

Page 9: MQ Light for WTU

© 2014 IBM Corporation

Use Cases

9

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

Ensure applications remain responsive even when 3rd party system are not available or responding fast enough

- Updating existing CRM system- Booking appointment

Delayed Processing

3rd Party Integration

Page 10: MQ Light for WTU

© 2014 IBM Corporation

Making applications more responsive and easier to scale

10

Use

r W

aits

Page 11: MQ Light for WTU

© 2014 IBM Corporation

Making applications more responsive and easier to scale

11

Use

r W

aits

Page 12: MQ Light for WTU

© 2014 IBM Corporation

Easy to get going

Download and get coding within 5 minutes

No administration; just code and go

Node API client libraries installed using npm package manager

Tutorials and examples in their languages, relevant to actual use

12

Page 13: MQ Light for WTU

© 2014 IBM Corporation

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?

13

Page 14: MQ Light for WTU

© 2014 IBM Corporation

Does not restrict language choice

Polyglot language

API crafted to feel native within the language

New clients can be created by developers– Clients based on Open source Apache Qpid Proton

Using open protocol (AMQP 1.0) to build community around messaging clients

14

Node.js

Python

PHP

Java*

Ruby

Openprotocol

*JMS 1.1 in Bluemix today

Page 15: MQ Light for WTU

© 2014 IBM Corporation15

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.

1. Send (‘/test/a’, “Hello”);2. Send (‘/test/a’, “World!”);

Topic Address Space

Sender application

Page 16: MQ Light for WTU

© 2014 IBM Corporation16

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.

1. Send (‘/test/a’, “Hello”);2. Send (‘/test/a’, “World!”);

1. Hello2. World!

Topic Address Space

Sender application

DESTINATIONPattern=/test/a

Page 17: MQ Light for WTU

© 2014 IBM Corporation17

MQ Light Messaging Model – Pub/Sub

•Multiple destinations can be created which match the same topic• Pub/Sub style.

DESTINATION

1. Send (‘/test/a’, “Hello”);2. Send (‘/test/a’, “World!”);

1. Hello2. World!

1. Hello2. World!

Topic Address Space

Sender application

DESTINATIONPattern=/test/a

Pattern=/test/#

Client 1

Client 2

Page 18: MQ Light for WTU

© 2014 IBM Corporation18

MQ Light Messaging Model – Persistent destinations

•Destinations persist for a defined “time to live” after receiver detaches.

1. Send (‘/test/a’, “Hello”);2. Send (‘/test/a’, “World!”);

Topic Address Space

Sender application

HelloWorld!

DESTINATIONPattern=/test/a

Disconnected client

Page 19: MQ Light for WTU

© 2014 IBM Corporation19

MQ Light Messaging Model – Sharing

•Clients attaching to the same topic pattern and share name attach to the same shared destination.

DESTINATION1. Send (‘/test/a’, “Hello”);2. Send (‘/test/a’, “World!”);

1. Hello2. World!

1. Hello

2. World!

SHARING

Topic Address Space

Sender application

DESTINATIONPattern=/test/#

Pattern=/test/#Share=myshare

Client 1

Client 2

Client 3

Page 20: MQ Light for WTU

© 2014 IBM Corporation20

MQ Light Messaging Model – Client takeover

1. Send (‘/test/a’, “Hello”);

Hello

Topic Address Space

Sender application

DESTINATIONPattern=/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.

Page 21: MQ Light for WTU

© 2014 IBM Corporation

MQ Light Messaging Model

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)

21

Page 22: MQ Light for WTU

© 2014 IBM Corporation

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.

22

 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);        });

Page 23: MQ Light for WTU

© 2014 IBM Corporation

Deployment options : Statement of Direction

23

Developer coding in Python, Ruby, JavaScript, Java, C#,

PHP

MQ Light for Bluemix

WebSphere MQ[Statement of Direction]

“MQ Light”

Deploy seamlessly to “MQ Light”, MQ or MQ Light Service

Builds application and uses MQ Light messaging and tests in local

developer sandbox

Page 24: MQ Light for WTU

© 2014 IBM Corporation

WALKTHROUGH

24

Page 25: MQ Light for WTU

© 2014 IBM Corporation25

Page 26: MQ Light for WTU

© 2014 IBM Corporation26

Page 27: MQ Light for WTU

© 2014 IBM Corporation27

Page 28: MQ Light for WTU

© 2014 IBM Corporation

Page 29: MQ Light for WTU

© 2014 IBM Corporation29

Page 30: MQ Light for WTU

© 2014 IBM Corporation30

Page 31: MQ Light for WTU

© 2014 IBM Corporation31

Page 32: MQ Light for WTU

© 2014 IBM Corporation32

Page 33: MQ Light for WTU

© 2014 IBM Corporation33

Page 34: MQ Light for WTU

© 2014 IBM Corporation34

Page 35: MQ Light for WTU

© 2014 IBM Corporation35

Page 36: MQ Light for WTU

© 2014 IBM Corporation36

Page 37: MQ Light for WTU

© 2014 IBM Corporation37

Page 38: MQ Light for WTU

© 2014 IBM Corporation38

Page 39: MQ Light for WTU

© 2014 IBM Corporation39

Page 40: MQ Light for WTU

© 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

40

Page 41: MQ Light for WTU

© 2014 IBM Corporation

IBM MQ Sessions this week10:30 - 12:00 13:15 - 14:15 14:30 - 15:30 16:00 - 17:00 17:15 - 18:15

Tuesday

Opening General Session- IBM Digital Experience and WebSphere Technical University

Session A31: IBM MQ CHLAUTH rules – with MQ V8 updates

Speaker: Morag HughsonRoom 02

Session A4: WebSphere MQ for z/OS: Performance and Accounting

Speaker: Alexander RossRoom 8

Session I26: DataPower-MQ Connectivity Deep Dive (Theory)

Speaker: Robin WileyRoom 27

Session Z1: WebSphere MQ for z/OS V8: Latest Features Deep Dive

Speaker: Damon CrossRoom 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 CrossRoom 02

Session A21: What's New in IBM Messaging

Speaker: Morag HughsonRoom 8

Session C7: Messaging in the Cloud with IBM MQ Light and IBM Bluemix

Speaker: Rob NicholsonRoom 27

Session A17: Managing work-loads, scaling and availability with IBM MQ clusters

Speaker: David WareRoom 6

Lab IL5: DataPower-MQ Connectivity Deep Dive (Hands-On)

Speaker: Robin WileyRoom 7b

Session A9: WebSphere MQ for z/OS: The Inside Story

Speaker: Damon CrossRoom 6

Thursday

Session A35: How to Develop Responsive Applications with IBM MQ Light

Speaker: Rob NicholsonRoom 27

Session A22: New IBM MQ V8 Security Features

Speaker: Morag HughsonRoom 01

Session A3: WebSphere MQ for z/OS: Shared Queues

Speaker: Alex RossRoom 6

Session A18: Using Publish /Subscribe with IBM MQ

Speaker: David WareRoom 27

Friday

Lab AL6: Developing a First Application with IBM WebSphere MQ Light

Speakers: Robert Nicholson, Alex RossRoom 7b

Session A16: Using IBM MQ Pub/Sub in an MQ network

Speaker: David WareRoom 6

Page 42: MQ Light for WTU

© 2014 IBM Corporation

Questions?

42

Page 43: MQ Light for WTU

© 2014 IBM Corporation

For Additional Information

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/

Page 44: MQ Light for WTU

Thank You

Rob NicholsonSenior Technical Staff MemberSoftware Group

[email protected]+44 1962 817517Twitter: nicholsrLinkedin: uk.linkedin.com/in/robertbnicholson/

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

Session A35: IBM MQ Light