ibm impact 2014 amc-1866 introduction to ibm messaging capabilities

38
© 2014 IBM Corporation Introduction to IBM Messaging Capabilities AMC-1866

Upload: peter-broadhurst

Post on 11-May-2015

708 views

Category:

Technology


4 download

DESCRIPTION

IBM Messaging provides market-leading capabilities for anywhere-to-anywhere integration across mobile, cloud, and enterprise platforms - from the simplest pair of applications requiring basic connectivity and data exchange, to the most complex business process management environments. Come to this session to understand the value and rationale of message/queuing and the IBM Messaging family of products; its key features and functions; and how it can be used to build a secure, flexible, and scalable messaging backbone for a business.

TRANSCRIPT

Page 1: IBM IMPACT 2014 AMC-1866 Introduction to IBM Messaging Capabilities

© 2014 IBM Corporation

Introduction to IBM Messaging CapabilitiesAMC-1866

Page 2: IBM IMPACT 2014 AMC-1866 Introduction to IBM Messaging Capabilities

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.

Page 3: IBM IMPACT 2014 AMC-1866 Introduction to IBM Messaging Capabilities

Anywhere

Anyone

Anyway

Anyhow

Anything

Creating scalable, resilient and interactive applications

RubyRuby

Node.jsNode.js

PythonPython

CC

C++C++

JavaJava

C#C#

PerlPerl

GoGo

ClojureClojure

LuaLua

ErlangErlang ScalaScala

PHPPHP

XML SOAP JSON COPYBOOK

Zip Image Telemetry CSV

IaaS

XML

PaaS

baremetal

virtualmachine

Page 4: IBM IMPACT 2014 AMC-1866 Introduction to IBM Messaging Capabilities
Page 5: IBM IMPACT 2014 AMC-1866 Introduction to IBM Messaging Capabilities
Page 6: IBM IMPACT 2014 AMC-1866 Introduction to IBM Messaging Capabilities

Why IBM Messaging for Modern Enterprise SOA Applications

Pendingwork

Application

Statedata

Businesslogic

UserinterfacesS

ervi

ce in

terf

ace

Events

TransactionsRequestsfor work

Queries

Batch/files

Page 7: IBM IMPACT 2014 AMC-1866 Introduction to IBM Messaging Capabilities

Transactions and Events

Pendingwork

Application

Statedata

Businesslogic

UserinterfacesS

ervi

ce in

terf

ace

Events

Queries

Transactions

Batch/files

- Transaction integrity via exactly once delivery

- Massive scale event distribution

- Supports all endpoints, from Mainframe to Mobile

- Transaction integrity via exactly once delivery

- Massive scale event distribution

- Supports all endpoints, from Mainframe to Mobile

Requestsfor work

Page 8: IBM IMPACT 2014 AMC-1866 Introduction to IBM Messaging Capabilities

Batch and Files

Pendingwork

Application

Statedata

Businesslogic

UserinterfacesS

ervi

ce in

terf

ace

Events

Requestsfor work

Queries

Transactions

Batch/files

- Secure and auditable Managed File Transfer (MFT)

- Efficient batch processing for any application platform

- Evolve systems from batch to real-time processing

- Secure and auditable Managed File Transfer (MFT)

- Efficient batch processing for any application platform

- Evolve systems from batch to real-time processing

Page 9: IBM IMPACT 2014 AMC-1866 Introduction to IBM Messaging Capabilities

Request / Reply Queries

Pendingwork

Application

Statedata

Businesslogic

UserinterfacesS

ervi

ce in

terf

ace

Events

Requestsfor work

Queries

- Prioritize, control and smooth high scale workloads

- Protect critical systems from new REST / HTTP front-end workloads

- Hide the complexity of global infrastructure from apps and developers

- Prioritize, control and smooth high scale workloads

- Protect critical systems from new REST / HTTP front-end workloads

- Hide the complexity of global infrastructure from apps and developers

Transactions

Batch/files

Page 10: IBM IMPACT 2014 AMC-1866 Introduction to IBM Messaging Capabilities

Within the application logic

Pendingwork

Application

Statedata

Businesslogic

UserinterfacesS

ervi

ce in

terf

ace

Events

Requestsfor work

Queries

- Optimize processing within the application

- Offload time-intensive processing

- Parallelize complex tasks

- Exploit WebSockets to make UIs responsive

- Optimize processing within the application

- Offload time-intensive processing

- Parallelize complex tasks

- Exploit WebSockets to make UIs responsive

Transactions

Batch/files

Page 11: IBM IMPACT 2014 AMC-1866 Introduction to IBM Messaging Capabilities

IBM MQ

A single, robust universal messaging backbone for dynamic, diverse systemsHeterogeneous any-to-any connectivity from desktop to mainframeA scalable messaging architecture that enables capacity to be incrementally grown to meet increasing workloadsAssures one-time delivery – messages are never lost or duplicatedLoosely coupled application architecture enables you to respond rapidly to internal and external challenges easily by modifying existing services

11

WebSphere MQ Advanced for Developers

- Full WebSphere MQ Advanced package

- Package available for download by developers

- Supported offering available priced per Single User Install

Page 12: IBM IMPACT 2014 AMC-1866 Introduction to IBM Messaging Capabilities

BusinessPartners

MQ as a Universal Messaging Backbone

Active/Active Queue Manager Hubs

Multi-instanceQueue Managers,and HA clustering

Co-locatedQueue Managers

z/OS QueueSharing Groups

Secure MQ Cluster and Channel communications – manage complexity and route around failures

Page 13: IBM IMPACT 2014 AMC-1866 Introduction to IBM Messaging Capabilities

MQ ClusterWorkload Balancing

MQ ClusterWorkload Balancing

Scalable Pattern: Active/Active HA and no SPOF

Every sender/requester uses two connectionsEvery receiver/service has two listenersMake each Queue Manager HA to recover persistent messagesSimple to interoperate with co-located Queue ManagersSimple to interoperate with z/OS Queue Sharing Groups Pattern discussed in detail here: http://ow.ly/vrUUV

App1 QM1App1 QM1

App1QM2App1QM2

App2 QM1App2 QM1

Shared QM1Shared QM1

Shared QM2Shared QM2

App1 Inst1App1 Inst1

App1 Inst2App1 Inst2

App1 Inst3App1 Inst3

App1 Inst4App1 Inst4

App2 Inst1App2 Inst1

App2 Inst2App2 Inst2

App2 Inst3App2 Inst3

App2 Inst4App2 Inst4

App2 QM2App2 QM2

App2 QM3App2 QM3

App2 QM4App2 QM4

App1 Inst1App1 Inst1

App1 Inst2App1 Inst2

App1 Inst3App1 Inst3

App1 Inst4App1 Inst4

App2 Inst1App2 Inst1

App2 Inst2App2 Inst2

Page 14: IBM IMPACT 2014 AMC-1866 Introduction to IBM Messaging Capabilities

Scalable pattern: Sending messages

Each app instance sends to two different queue managers

Need a workload management strategy• Prioritised• Random• Round robin – my personal preference

Biggest practical concern for customers:

How does my app code connectto two remote queue managers?

http://ow.ly/vrWEP

Sendingapplication

Connectionlogic

(CCDT orcustom)

QM 1

QM 2

MQ connection 1

MQ connection 2

MQ

Clust er

Page 15: IBM IMPACT 2014 AMC-1866 Introduction to IBM Messaging Capabilities

Scalable pattern: Receiving messages

Each application instance needs two active listeners• Random/prioritised attachment can lead to stranded messages

For Java EE this means two MDB endpoints• EJB 2.1 style deployment descriptors

– Add a second endpoint to the XML

• EJB 3.0 style annotations– Create a code hierarchy

Receivingapplication

Active

Active

MQ Listener 1

MQ Listener 2

MQ

Clust er

QM 1

QM 2

Note: AMQSCLM provides an alternative if you cannot create two active listeners. AMQSCLM redirects messages via the cluster if one consumer is down: http://ow.ly/vrY9y

Page 16: IBM IMPACT 2014 AMC-1866 Introduction to IBM Messaging Capabilities

Scalable pattern: Synchronous request/response

Response 1Requesterapplication

Connectionlogic

(CCDT orcustom)

MQ 1

MQ 2

MQ connection 1

MQ connection 2

MQ

Clust er

Request 1

Response 2

Request 2

Use same MQ connection to receive the response• e.g. the same JMS Session

MQ fills in the MQMD.ReplyToQMgr on send• Back-end app must honour this when sending the response

Page 17: IBM IMPACT 2014 AMC-1866 Introduction to IBM Messaging Capabilities

AsynchronousReceiver

Scalable pattern: Two-way asynchronous messaging

The optimal use of messaging is fully asynchronousRequests are sent “fire & forget”, as are responses

• Critical requests are sent as persistent within a transaction that updates a DB• Transactional state update + persistent send = exactly once delivery

Responses are handled by any app instance at any time• No thread is left ‘hung’ in the requesting application• If responses need to be correlated with requests, then a state store is used

– A Database – DB2 etc.– An elastic cache – WebSphere eXtreme Scale

Must be designed into the application• Can revolutionize responsiveness• Truly decouples applications

Receivingapplication

Active

Active

MQ Listener 1

MQ Listener 2

MQ

Cluste

r

ReceivingGateway 1

ReceivingGateway 2

Fire &ForgetRequester

CCDTor custom

SendingGateway 1

SendingGateway 2

MQ connection 1

MQ connection 2

MQ Listener 1

MQ Listener 2

50% requests

50% requests

50% responses

50% responses

Page 18: IBM IMPACT 2014 AMC-1866 Introduction to IBM Messaging Capabilities

Scalable pattern: Publish/subscribe messaging

MQ gives the same QoS for pub/sub as for P2P• Fan out messages one-to-many• WLM across multiple subscriber instances

Achieved by bridging durable subscriptions to cluster queues• Define subscriptions on queue managers where publishers

connect

Sub1 Inst1

Sub1 Inst2Pub Inst1

Pub Inst2

QM1

QM2

QM3

QM4

Pub/S

ub Fan

-Ou

t+

MQ

Clu ster W

LM

Sub2 Inst1

Sub2 Inst2

QM3

QM4

Page 19: IBM IMPACT 2014 AMC-1866 Introduction to IBM Messaging Capabilities
Page 20: IBM IMPACT 2014 AMC-1866 Introduction to IBM Messaging Capabilities

Internet of Things – 2020 forecast

212 Billion

Installed Things

30 Billion

Autonomously connected Things

Highly sophisticated Mobile Things with

human interaction

Instrumented & Interconnected Things

communicating M2M (machine-to-machine)

Source: IDC, December 2013

Page 21: IBM IMPACT 2014 AMC-1866 Introduction to IBM Messaging Capabilities

Why Messaging for Mobile and M2M

The HTTP standard revolutionized how people consume data• Simple request/response model• Available via any tablet, laptop, phone, PC etc.• Not designed for wireless• Slow and unreliable on mobile networks

Mobile and M2M have additional challenges• Requires a real-time, event-driven model• Publishing information one-to-many• Listening for events as they happen• Sending small packets of data in huge volumes• Reliably pushing data over unreliable networks

Page 22: IBM IMPACT 2014 AMC-1866 Introduction to IBM Messaging Capabilities

Use case – Connected car

Connected car

vibration detected, details published

Unlock my car

schedules appointmentwith car owner

Find my car

predicts part failure

Page 23: IBM IMPACT 2014 AMC-1866 Introduction to IBM Messaging Capabilities

MQTT protocol for mobile and M2M messagingMQTT is a messaging protocol ideally suited to mobile and M2M environments

It has an open specification (http://mqtt.org)• There are over 40 different client implementations• Standardization with OASIS is in progress

High-quality, open-source implementations of clients• Hosted at the Eclipse Paho project

• Build the clients yourself or use free ones from IBM or others

MQTT is very lean and fast• Efficient format with minimal overhead• Client implementations are small and can run on small devices

Communication using messaging is much more flexible than request/response• Bi-directional, asynchronous “push” communication

• Publish/subscribe decouples the senders of information from the receivers

Page 24: IBM IMPACT 2014 AMC-1866 Introduction to IBM Messaging Capabilities

IBM MessageSight

24

• A purpose-built messaging appliance

• The gateway to the Internet of Things for the enterprise

• Fast, lightweight, secure, reliable messaging for Mobile

Page 25: IBM IMPACT 2014 AMC-1866 Introduction to IBM Messaging Capabilities

IBM MessageSight at the boundary of the Enterprise

25

Page 26: IBM IMPACT 2014 AMC-1866 Introduction to IBM Messaging Capabilities

Managed APIs

Managed APIs

Registration and messaging

Registration and messaging

PartnersCustomers

Developers

Employees

More ThingsBuilt-in IoT Capabilities

Built-in IoT Capabilities

BlueMix devenvironment

BlueMix devenvironment

IBM Internet of Things CloudStatement of direction: http://ow.ly/vGcg7 Quick start: http://quickstart.internetofthings.ibmcloud.com

Page 27: IBM IMPACT 2014 AMC-1866 Introduction to IBM Messaging Capabilities
Page 28: IBM IMPACT 2014 AMC-1866 Introduction to IBM Messaging Capabilities

A new breed of Developer has evolved

Expects communications to be easy• Thinks in REST/HTTP, JSON and simple XML

Develops web facing apps, using web technologies• Both on the web, and of the web

Only cares about infrastructure that rapidly delivers value• Might prototype multiple components to find something that fits

Assembles apps using a microservices approach• Well defined components separated by lightweight comms

Expects everything to scale• Cares about high levels of redundancy, more than transactions

Sees the cloud as the future• For everything from prototyping to production

RubyRuby

Node.jsNode.js

PythonPython

CC

C++C++

JavaJava

C#C#

PerlPerl

GoGo

ClojureClojure

LuaLua

ErlangErlang ScalaScala

PHPPHP

Page 29: IBM IMPACT 2014 AMC-1866 Introduction to IBM Messaging Capabilities

29

Mes

sagi

ngM

essa

ging

A Typical Developer Use-Case for Messaging

I want to offload expensive tasks to workers• So I can keep my web requests responsive

I care about the Web App and the Workers• I don’t care about the details of the messaging

Web AppInstanceWeb AppInstance

Web AppInstanceWeb AppInstance

Web AppInstanceWeb AppInstance

Web AppInstanceWeb AppInstance

Web AppInstanceWeb AppInstance

WorkerWorker

WorkerWorker

WorkerWorker

Page 30: IBM IMPACT 2014 AMC-1866 Introduction to IBM Messaging Capabilities

30

MQ Light and Application Messaging

Messaging for application developers to help create responsive applications that scale easily

Trivially easy to get started;

• No setup

• No configuration

• No administration

Available as software download or cloud service

APIs crafted specifically for each language

Tooling that supports app development

Software

Cloud Service

30

Page 31: IBM IMPACT 2014 AMC-1866 Introduction to IBM Messaging Capabilities

Application messaging deployment options

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

PHP

Elastic MQ(On BlueMix)

WebSphere MQ[Statement of Direction]

“MQ Light”

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

Builds application and uses MQ Light messaging and tests in local

developer sandbox

31

Page 32: IBM IMPACT 2014 AMC-1866 Introduction to IBM Messaging Capabilities

Try IBM application messaging today!

MQ Light : www.ibmdw.net/messaging/mq-light/

Elastic MQ : www.bluemix.net

MQ LightJMS

Page 33: IBM IMPACT 2014 AMC-1866 Introduction to IBM Messaging Capabilities

Messaging for Enterprise, Mobile and Cloud Sessions this WeekMonday Tuesday Wednesday Thursday

09:00 1868: IBM WS MQ: Disaster Recovery

1870: IBM WS MQ: Using Pub Sub in an MQ Network

1924: Roundtable: IBM WS MQ Light in a IBM WS MQ Infrastructure

10:30 1880: Secure Messages with IBM WS MQ Advanced Message Security

1866: Introduction to IBM Messaging Capabilities

2640: MQ Telemetry Transport (MQTT) Details

3134: Meet the Experts: IBM MessageSight

1924: Roundtable: IBM WS MQ Light in a IBM WS MQ Infrastructure

1896: How to Develop Responsive Applications with IBM WS MQ Light

1885: IBM WS MQ on z/OS & Distributed Platforms - Are They Like Oil & Water

1917: Hands-on Lab: Developing a First Application with IBM WS MQ Light

1294: Enable Active-Active Business Through Enterprise High-availability Messaging Technology

1873: IBM WS MQ Security: Latest Features Deep Dive

12:00 LUNCH LUNCH LUNCH LUNCH

3420: Managing What Needs to Be Managed - It Shouldn’t Matter Where It Is

13:00 1227: How Not to Run a Certificate Management Center of Excellence

1869: IBM WS MQ: Using the Publish Subscribe Messaging Paradigm

1863: What's New in IBM Messaging

1872: IBM WS MQ: Managing Workloads, Scaling & Availability with MQ Clusters

1879: Using IBM WS MQ in Managed File Transfer Environments

1922: Roundtable: IBM Messaging Feedback

1883: Where Is the Message - Analyze IBM WS MQ Recovery Logs, Trace Routes, & Look In Applications

14:15 1800: IBM WS MQ for z/OS & CICS: Workload Balancing in a Plexed World

1863: What's New in IBM Messaging

1924: Roundtable: IBM WS MQ Light in a IBM WS MQ Infrastructure

1876: IBM WS MQ for z/OS: Latest Features Deep Dive

1229: The IBM WS MQ Toolbox: 20 Scripts, One-liners, & Utilities for UNIX & Windows

1804: Mean Time to Innocence: IBM WS MQ Problem Determination

16:00 1877: IBM WS MQ for z/OS: Performance & Accounting

1894: What Is IBM WS MQ Light & Why It Matters

15:45 1882: Building a Scalable & Continuously Avail-able IBM WS MQ Infrastructure with Travelport

1720: Building a Managed File Transfer Service at ADP

1897: Messaging in the Cloud with IBM WS MQ Light & IBM BlueMix

19

16: H

and

s-on La

b: IB

M W

S M

Q

3133: Meet the Experts: IBM Messaging

1874: IBM WS MQ: Performance & Internals Deep Dive (Not zOS)

1866: Introduction to IBM Messaging Capabilities

2454: Using IBMs Managed File Transfer Portfolio to Maximize Data Effectiveness

17:15 1881: Using IBM WS MQ with IBM WAS & Liberty Profile

1873: IBM WS MQ Security: Latest Features Deep Dive

17:00 1878: IBM WS MQ for zOS: Shared Queues

1922: Roundtable: IBM Messaging Feedback

1867: IBM WS MQ: High Availability

1922: Roundtable: IBM Messaging Feedback

2646: Discover the Value IBM Software Delivers On Top of Open Source

Page 34: IBM IMPACT 2014 AMC-1866 Introduction to IBM Messaging Capabilities

Messaging for Enterprise, Mobile and Cloud• 1880: Secure Messages with IBM WebSphere MQ Advanced Message Security• 1866: Introduction to IBM Messaging Capabilities• 2640: MQ Telemetry Transport (MQTT) Details• 1227: How Not to Run a Certificate Management Center of Excellence• 1869: IBM WebSphere MQ: Using the Publish Subscribe Messaging Paradigm• 1863: What's New in IBM Messaging• 1877: IBM WebSphere MQ for z/OS: Performance & Accounting• 1894: What Is IBM WebSphere MQ Light & Why It Matters• 1881: Using IBM WebSphere MQ with IBM WebSphere Application Server & Liberty Profile• 1873: IBM WebSphere MQ Security: Latest Features Deep Dive• 3134: Meet the Experts: IBM MessageSight• 1924: Roundtable: IBM WebSphere MQ Light in a IBM WebSphere MQ Infrastructure• 1896: How to Develop Responsive Applications with IBM WebSphere MQ Light• 3420: Managing What Needs to Be Managed - It Shouldnt Matter Where It Is• 1872: IBM WebSphere MQ: Managing Workloads, Scaling & Availability with MQ Clusters• 1800: IBM WebSphere MQ for z/OS & CICS: Workload Balancing in a Plexed World• 1882: Building a Scalable & Continuously Available IBM WebSphere MQ Infrastructure with Travelport• 1720: Building a Managed File Transfer Service at ADP• 1897: Messaging in the Cloud with IBM WebSphere MQ Light & IBM BlueMix• 1878: IBM WebSphere MQ for zOS: Shared Queues• 1922: Roundtable: IBM Messaging Feedback• 1885: IBM WebSphere MQ on z/OS & Distributed Platforms - Are They Like Oil & Water• 1917: Hands-on Lab: Developing a First Application with IBM WebSphere MQ Light• 1879: Using IBM WebSphere MQ in Managed File Transfer Environments• 1876: IBM WebSphere MQ for z/OS: Latest Features Deep Dive• 3133: Meet the Experts: IBM Messaging• 1874: IBM WebSphere MQ: Performance & Internals Deep Dive (Not zOS)• 1916: Hands-on Lab: IBM WebSphere MQ• 1867: IBM WebSphere MQ: High Availability• 2646: Discover the Value IBM Software Delivers On Top of Open Source• 1868: IBM WebSphere MQ: Disaster Recovery• 1870: IBM WebSphere MQ: Using Publish Subscribe in an MQ Network• 1294: Enable Active-Active Business Through Enterprise High-availability Messaging Technology• 1883: Where Is the Message - Analyze IBM WebSphere MQ Recovery Logs, Trace Routes, & Look In

Applications• 1229: The IBM WebSphere MQ Toolbox: 20 Scripts, One-liners, & Utilities for UNIX & Windows• 1804: Mean Time to Innocence: IBM WebSphere MQ Problem Determination• 2454: Using IBMs Managed File Transfer Portfolio to Maximize Data Effectiveness

Mon 10:30Mon 10:30, Wed 15:45Mon 10:30Mon 13:00Mon 13:00Mon 13:00, Tue 14:15Mon 16:00Mon 16:00Mon 17:15Mon 17:15, Thu 10:30Tue 10:30Tue 10:30, Wed 14:15, Thu 09:00Tue 10:30Tue 12:00Tue 13:00Tue 14:15Tue 15:45Tue 15:45Tue 15:45Tue 17:00Tue 17:00, Wed 13:00, Wed 17:00Wed 10:30Wed 10:30Wed 13:00Wed 14:15Wed 15:45Wed 15:45Wed 15:45Wed 17:00Wed 17:00Thu 09:00Thu 09:00Thu 10:30Thu 13:00Thu 14:15Thu 14:15Thu 15:45

Page 35: IBM IMPACT 2014 AMC-1866 Introduction to IBM Messaging Capabilities

Questions?

Page 36: IBM IMPACT 2014 AMC-1866 Introduction to IBM Messaging Capabilities

We Value Your Feedback

Don’t forget to submit your Impact session and speaker feedback! Your feedback is very important to us – we use it to continually improve the conference.

Use the Conference Mobile App or the online Agenda Builder to quickly submit your survey

• Navigate to “Surveys” to see a view of surveys for sessions you’ve attended

36

Page 37: IBM IMPACT 2014 AMC-1866 Introduction to IBM Messaging Capabilities

Thank You

Page 38: IBM IMPACT 2014 AMC-1866 Introduction to IBM Messaging Capabilities

Legal Disclaimer

• © IBM Corporation 2014. All Rights Reserved.• The information contained in this publication is provided for informational purposes only. While efforts were made to verify the completeness and accuracy of the information contained

in this publication, it is provided AS IS without warranty of any kind, express or implied. In addition, this information is based on IBM’s current product plans and strategy, which are subject to change by IBM without notice. IBM shall not be responsible for any damages arising out of the use of, or otherwise related to, this publication or any other materials. Nothing contained in this publication is intended to, nor shall have the effect of, creating any warranties or representations from IBM or its suppliers or licensors, or altering the terms and conditions of the applicable license agreement governing the use of IBM software.

• References in this presentation to IBM products, programs, or services do not imply that they will be available in all countries in which IBM operates. Product release dates and/or capabilities referenced in this presentation may change at any time at IBM’s sole discretion based on market opportunities or other factors, and are not intended to be a commitment to future product or feature availability in any way. Nothing contained in these materials is intended to, nor shall have the effect of, stating or implying that any activities undertaken by you will result in any specific sales, revenue growth or other results.

• If the text contains performance statistics or references to benchmarks, insert the following language; otherwise delete: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.

• If the text includes any customer examples, please confirm we have prior written approval from such customer and insert the following language; otherwise delete:All customer examples described are presented as illustrations of how those customers have used IBM products and the results they may have achieved. Actual environmental costs and performance characteristics may vary by customer.

• Please review text for proper trademark attribution of IBM products. At first use, each product name must be the full name and include appropriate trademark symbols (e.g., IBM Lotus® Sametime® Unyte™). Subsequent references can drop “IBM” but should include the proper branding (e.g., Lotus Sametime Gateway, or WebSphere Application Server). Please refer to http://www.ibm.com/legal/copytrade.shtml for guidance on which trademarks require the ® or ™ symbol. Do not use abbreviations for IBM product names in your presentation. All product names must be used as adjectives rather than nouns. Please list all of the trademarks that you use in your presentation as follows; delete any not included in your presentation. IBM, the IBM logo, Lotus, Lotus Notes, Notes, Domino, Quickr, Sametime, WebSphere, UC2, PartnerWorld and Lotusphere are trademarks of International Business Machines Corporation in the United States, other countries, or both. Unyte is a trademark of WebDialogs, Inc., in the United States, other countries, or both.

• If you reference Adobe® in the text, please mark the first use and include the following; otherwise delete:Adobe, the Adobe logo, PostScript, and the PostScript logo are either registered trademarks or trademarks of Adobe Systems Incorporated in the United States, and/or other countries.

• If you reference Java™ in the text, please mark the first use and include the following; otherwise delete:Java and all Java-based trademarks are trademarks of Sun Microsystems, Inc. in the United States, other countries, or both.

• If you reference Microsoft® and/or Windows® in the text, please mark the first use and include the following, as applicable; otherwise delete:Microsoft and Windows are trademarks of Microsoft Corporation in the United States, other countries, or both.

• If you reference Intel® and/or any of the following Intel products in the text, please mark the first use and include those that you use as follows; otherwise delete:Intel, Intel Centrino, Celeron, Intel Xeon, Intel SpeedStep, Itanium, and Pentium are trademarks or registered trademarks of Intel Corporation or its subsidiaries in the United States and other countries.

• If you reference UNIX® in the text, please mark the first use and include the following; otherwise delete:UNIX is a registered trademark of The Open Group in the United States and other countries.

• If you reference Linux® in your presentation, please mark the first use and include the following; otherwise delete:Linux is a registered trademark of Linus Torvalds in the United States, other countries, or both. Other company, product, or service names may be trademarks or service marks of others.

• If the text/graphics include screenshots, no actual IBM employee names may be used (even your own), if your screenshots include fictitious company names (e.g., Renovations, Zeta Bank, Acme) please update and insert the following; otherwise delete: All references to [insert fictitious company name] refer to a fictitious company and are used for illustration purposes only.