SlideShare uma empresa Scribd logo
1 de 21
Baixar para ler offline
Message Queue Product
Update
Edward Bratt
Sr. Manager
Sun Microsystems, Inc.


                         1
Open MQ
• Premier Open Source, Community MOM platform
  > Also available with commercial support and license
• Provides enterprise level messaging
  > Publish Subscribe, Point to Point
• Complete range of resilience
  > In-memory pub-sub; distributed persistence store; distributed
    in-flight data availability
  > Support for distributed disk clustering
  > HA support via Sun Cluster or JDBC HA Database
• JMX Admin. Interface (or stand-alone client Admin.)

                           Sun Confidential: Internal Only          2
Connectivity in MQ
                                • Rich API Support
                                      > JMS API
                                      > C API
                                         – Now with XA support
                                • Simple UMS API
                                      > POX, URL-Query-String
                                • Clients connect via
                                  TCP/TLS or SOAP / HTTP
                                • JCA Resource Adapter
                                      > Supports JMSRA, JMSJCA,
                                            GenericRA

               Sun Confidential: Internal Only                    3
What's new In MQ
• Version 4.2 added
  > Wild-card Topic Destinations
     – Added *, **, >, syntax to Topic names
  > XML Validation
     – XML messages can be rejected if they fail validation
• Version 4.3 adds
  > Universal Message Service (UMS)
     – Provides simple API for any web-enabled client
     – Scriptable URI formed commands or XML documents
  > Support updates
     – Windows 2008, Windows Vista, MySQL, MySQL Cluster Edition, AIX
       (with c API and DB2 support on AIX)


                               Sun Confidential: Internal Only          4
Complete Platform Matrix
•   Sun Solaris 9, 10 – SPARC, x86 – 32 or 64 bit
•   Linux – Red Hat 4 & 5
•   Windows – XP, Vista, 2003 Server, 2008 Server
•   AIX – 6.1
•   Other Platforms
    > GlassFish Distributions include
      – Ubuntu, Macintosh OSX
•   JDBC Databases
    > MySQL (Community, Enterprise Cluster)
    > Oracle 10, 11
    > HADB (GlassFish Enterprise Server, HA Profile)
    > Java DB
    > Postgresql
    > DB2 (AIX Only)
•   JDK 1.5, 1.6.0_10*
                      Sun Confidential: Internal Only   5
Performance, 4.3 Compared To 4.2
                                                                                                             • Overall performance
                                                                                                               improved 8%
% Improvement MQ 4.3 over MQ 4.2
                14%

                                                                                                             • HADB performance is
                13%
                12%


                                                                                                               improved by 3x!
                11%
% Improvement




                10%
                 9%

                                                                                                                   > Optimized queries
                 8%
                 7%
                 6%
                                                                                                                   > Reduced serialization
                 5%


                                                                                                                         caused by HADB
                 4%
                 3%

                                                                                                                         implementation
                 2%
                 1%
                 0%
                                                                                        Overall
                                                                            Queue All
                                                       Queue NP
                                           Topic All
                                 Topic P




                                                                  Queue P
                      Topic NP




                                                                                            Sun Confidential: Internal Only                  6
MQ Connectivity

              Java EE – e.g. GlassFish 2.1
   MDB ContainerEJB Container      Web Container

                                             JMS Servlet UMS Servlet
       MDB         EJB / JMS

                                                              JM
                                                    JMS
             RA        RA                                       S
                                                                    JMS Client
                  MQ Broker (Cluster)
              MQ         MQ                           MQ
                                                                      C/C++
             Broker     Broker                       Broker
                                                                      Client

                       Sun Confidential: Internal Only                         7
Community Information
• Open MQ Wiki
  > Community examples
     – Samples for Spring integration
     – Samples for STOMP Connect
               Stream Oriented Messaging Protocol
           –
     – jRuby example
     – Setup instructions for Hermes JMS
  > FAQs
     – Many sections
     – Internal commands, JDBC, Private APIs, JMX, Etc
• Lots of info. In Users alias and Forum


                                   Sun Confidential: Internal Only   8
Where to look further
• Open MQ project site – Community version
  > https://mq.dev.java.net
  > Don't forget to check the wiki at
     – http://wiki.glassfish.java.net/Wiki.jsp?page=OpenMessageQueue
• Java MQ product – Commercial version
  > http://sun.com/software/products/message_queue
• JMQ Product Manuals
  > http://docs.sun.com/coll/1307.6
• Questions or other comments
  > Community Mailing List: mailto:users@mq.dev.java.net
  > User Forum: http://forum.java.sun.com/forum.jspa?forumID=711

                               Sun Confidential: Internal Only         9
Universal Message
Service (UMS)




                    10
Universal Message Service




• UMS is a very simple API
• It is implemented as a WebApp
  > Deployed to any web container (GlassFish, Tomcat, GF
    v3Prelude)
• Simple to configure
                         Sun Confidential: Internal Only   11
UMS – Simple Yet Powerful
• Simple API
      Login (optional)
  >
      Send
  >
      Receive
  >
      Commit (optional)
  >
      Rollback (optional)
  >
      Close (optional)
  >
• Supports HTTP or HTTPS
• For stateless clients (i.e. No login/logout) limited only by
  throughput requirements
• Support many stateful clients per JMS connection
  > Default is 100 stateful clients per connection
                            Sun Confidential: Internal Only      12
UMS Interface Types
  • Simple messaging with HTTP URL query string
     > Post /ums/simple?service=send&destination=myQueue
       Hello, World!

  • XML Document

<SOAP-ENV:Envelope xmlns:SOAP-ENV=quot;http://schemas.xmlsoap.org/soap/
envelope/quot;>
       <SOAP-ENV:Header>
              <ums:MessageHeader xmlns:ums=quot;https://mq.dev.java.net/umsquot;
ums:id=quot;1.0quot; ums:version=quot;1.0quot;>
                     <ums:Service
                     ums:service=quot;sendquot;
                     ums:destination=quot;myQueuequot;
                     ums:domain=quot;queuequot;
                     ums:sid=quot;7-LTgxMDczMTczNQ== quot;/>
              </ums:MessageHeader>
       </SOAP-ENV:Header>
<SOAP-ENV:Body><bodyvalue>Hello, World!</bodyvalue></SOAP-ENV:Body>
</SOAP-ENV:Envelope>

                                Sun Confidential: Internal Only            13
Universal Message Service
• Why mess with JMS?
  > JMS is a very rich and stable API
  > JMS is designed for back-end messaging
• Goal is to allow any web enabled client to easily access
  this back-end
  > Provide a simpler API
  > Scripting languages; Compiled languages
  > Lower deployment overhead
     – Reduce or eliminate deployment issues with client runtime
• Ubiquity of XML and URI query


                              Sun Confidential: Internal Only      14
Demo. Setup
• If you want to follow along with the demo you'll need
  > MQ 4.3 – http://sun.com/software/products/message_queue/get.jsp
  > GlassFish v3 Prelude –
    http://sun.com/software/products/glassfishv3_prelude/get.jsp
  > To run the Python sample, you'll need Python –
    http://python.org/download/releases/2.5.2/
  > The C# example only works in Windows operating environment.




                         Sun Confidential: Internal Only           15
Demonstration
• Start the MQ Broker
  > Imqbrokerd -tty
• Deploy UMS.war to your web container
  > Asadmin start-domain
  > Asadmin deploy ums.war ($mq-home/mq/lib/ums/imqums.war)
• Point your browser to
  > http://localhost:8080/ums/
• Select “Examples” link
• Try the Ajax Send and Receive
• Send w/Python; Receive w/C#
  > python SendSOAPMsg.py -s localhost:8080 -f <filename>
  > ReceiveSOAPMsg.exe -s localhost:8080
                           Sun Confidential: Internal Only    16
Demo

Sun Confidential: Internal Only   17
UMS Deployment
                                                                            •••
                   JRuby                                  C# Python AJAX

                                                               HTTP/S

 Web Container – ex.
 GlassFish v3 Prelude                      Web Container

                                      JMS                  UMS Servlet

                                                             JMS
                                      MQ Broker (Cluster)
                           MQ                              MQ       MQ
                          Broker                          Broker   Broker

                        Sun Confidential: Internal Only                           18
UMS vs. JMS
• UMS is not a JMS replacement
• Use UMS for low volume clients
  > Particularly useful with scripted applications
  > Suitable for many clients, each at relatively low volume
     – Client messaging measured in messages per minute
     – Tens of Thousands of active clients, perhaps more
  > No client runtime to distribute or manage
• Use JMS (Java or C) for traditional settings
  > Highest throughput, supports (relatively) fewer clients
     – Client messaging measured in hundreds to thousands per second
     – Hundreds to thousands of clients
  > Much richer control
  > Runtime deployment must be managed
                             Sun Confidential: Internal Only           19
Where to look further
• Open MQ project site – Community version
  > https://mq.dev.java.net
  > Don't forget to check the wiki at
     – http://wiki.glassfish.java.net/Wiki.jsp?page=OpenMessageQueue
• UMS details are in the WAR and online at
  > https://mq.dev.java.net/4.3-content/ums/umsMain.html
• JMQ Product Manuals
  > http://docs.sun.com/coll/1307.6
• Questions or other comments
  > Community Mailing List: mailto:users@mq.dev.java.net
  > User Forum: http://forum.java.sun.com/forum.jspa?forumID=711

                               Sun Confidential: Internal Only         20
Message Queue
Product Update
Edward Bratt
ed.bratt@sun.com



                   21

Mais conteúdo relacionado

Semelhante a Open Mq Intro

Semelhante a Open Mq Intro (20)

Messaging With ActiveMQ
Messaging With ActiveMQMessaging With ActiveMQ
Messaging With ActiveMQ
 
Lightweight Grids With Terracotta
Lightweight Grids With TerracottaLightweight Grids With Terracotta
Lightweight Grids With Terracotta
 
Glass Fish Portfolio Web Server Cvr
Glass Fish Portfolio Web Server CvrGlass Fish Portfolio Web Server Cvr
Glass Fish Portfolio Web Server Cvr
 
Websocket
WebsocketWebsocket
Websocket
 
GlassFish v3 Prelude Aquarium Paris
GlassFish v3 Prelude Aquarium ParisGlassFish v3 Prelude Aquarium Paris
GlassFish v3 Prelude Aquarium Paris
 
Grizzly 20080925 V2
Grizzly 20080925 V2Grizzly 20080925 V2
Grizzly 20080925 V2
 
[Roblek] Distributed computing in practice
[Roblek] Distributed computing in practice[Roblek] Distributed computing in practice
[Roblek] Distributed computing in practice
 
Memcached, presented to LCA2010
Memcached, presented to LCA2010Memcached, presented to LCA2010
Memcached, presented to LCA2010
 
Rails hosting
Rails hostingRails hosting
Rails hosting
 
GlassFish v2 Clustering
GlassFish v2 ClusteringGlassFish v2 Clustering
GlassFish v2 Clustering
 
Deploying And Monitoring Rails
Deploying And Monitoring RailsDeploying And Monitoring Rails
Deploying And Monitoring Rails
 
XS Boston 2008 Network Topology
XS Boston 2008 Network TopologyXS Boston 2008 Network Topology
XS Boston 2008 Network Topology
 
Net Beans61 Ide
Net Beans61 IdeNet Beans61 Ide
Net Beans61 Ide
 
Java ME Networking & Connectivity
Java ME Networking & ConnectivityJava ME Networking & Connectivity
Java ME Networking & Connectivity
 
Web Server/App Server Connectivity
Web Server/App Server ConnectivityWeb Server/App Server Connectivity
Web Server/App Server Connectivity
 
OpenSSO Roadmap Aquarium
OpenSSO Roadmap AquariumOpenSSO Roadmap Aquarium
OpenSSO Roadmap Aquarium
 
Http Status Report
Http Status ReportHttp Status Report
Http Status Report
 
GlassFish v3 : En Route Java EE 6
GlassFish v3 : En Route Java EE 6GlassFish v3 : En Route Java EE 6
GlassFish v3 : En Route Java EE 6
 
OpenSolaris Web Stack MySQL BOF
OpenSolaris Web Stack MySQL BOFOpenSolaris Web Stack MySQL BOF
OpenSolaris Web Stack MySQL BOF
 
Rest Vs Soap Yawn2289
Rest Vs Soap Yawn2289Rest Vs Soap Yawn2289
Rest Vs Soap Yawn2289
 

Mais de Eduardo Pelegri-Llopart

Pelegri Desarrollando en una nueva era de software
Pelegri   Desarrollando en una nueva era de software Pelegri   Desarrollando en una nueva era de software
Pelegri Desarrollando en una nueva era de software Eduardo Pelegri-Llopart
 
Market trends in IT - exchange cala - October 2015
Market trends in IT - exchange cala - October 2015Market trends in IT - exchange cala - October 2015
Market trends in IT - exchange cala - October 2015Eduardo Pelegri-Llopart
 
The impact of IOT - exchange cala - 2015
The impact of IOT - exchange cala - 2015The impact of IOT - exchange cala - 2015
The impact of IOT - exchange cala - 2015Eduardo Pelegri-Llopart
 
What is IoT and how Modulus and Pacific can Help - Featuring Node.js and Roll...
What is IoT and how Modulus and Pacific can Help - Featuring Node.js and Roll...What is IoT and how Modulus and Pacific can Help - Featuring Node.js and Roll...
What is IoT and how Modulus and Pacific can Help - Featuring Node.js and Roll...Eduardo Pelegri-Llopart
 
What is the Internet of Things and How it Impacts You
What is the Internet of Things and How it Impacts YouWhat is the Internet of Things and How it Impacts You
What is the Internet of Things and How it Impacts YouEduardo Pelegri-Llopart
 
Ehcache Architecture, Features And Usage Patterns
Ehcache Architecture, Features And Usage PatternsEhcache Architecture, Features And Usage Patterns
Ehcache Architecture, Features And Usage PatternsEduardo Pelegri-Llopart
 

Mais de Eduardo Pelegri-Llopart (20)

Juggling at freenome
Juggling   at freenomeJuggling   at freenome
Juggling at freenome
 
Csumb capstone-fall2016
Csumb capstone-fall2016Csumb capstone-fall2016
Csumb capstone-fall2016
 
Digital activitymanagement
Digital activitymanagementDigital activitymanagement
Digital activitymanagement
 
Progress next iot_pelegri
Progress next iot_pelegriProgress next iot_pelegri
Progress next iot_pelegri
 
Pelegri Desarrollando en una nueva era de software
Pelegri   Desarrollando en una nueva era de software Pelegri   Desarrollando en una nueva era de software
Pelegri Desarrollando en una nueva era de software
 
Market trends in IT - exchange cala - October 2015
Market trends in IT - exchange cala - October 2015Market trends in IT - exchange cala - October 2015
Market trends in IT - exchange cala - October 2015
 
The impact of IOT - exchange cala - 2015
The impact of IOT - exchange cala - 2015The impact of IOT - exchange cala - 2015
The impact of IOT - exchange cala - 2015
 
IOT - Presentation to PEP @ Progress
IOT - Presentation to PEP @ ProgressIOT - Presentation to PEP @ Progress
IOT - Presentation to PEP @ Progress
 
Node.js as an IOT Bridge
Node.js as an IOT BridgeNode.js as an IOT Bridge
Node.js as an IOT Bridge
 
What is IoT and how Modulus and Pacific can Help - Featuring Node.js and Roll...
What is IoT and how Modulus and Pacific can Help - Featuring Node.js and Roll...What is IoT and how Modulus and Pacific can Help - Featuring Node.js and Roll...
What is IoT and how Modulus and Pacific can Help - Featuring Node.js and Roll...
 
What is the Internet of Things and How it Impacts You
What is the Internet of Things and How it Impacts YouWhat is the Internet of Things and How it Impacts You
What is the Internet of Things and How it Impacts You
 
Community Update 25 Mar2010 - English
Community Update 25 Mar2010 - EnglishCommunity Update 25 Mar2010 - English
Community Update 25 Mar2010 - English
 
GlassFish Community Update 25 Mar2010
GlassFish Community Update 25 Mar2010GlassFish Community Update 25 Mar2010
GlassFish Community Update 25 Mar2010
 
Glass Fish Portfolio C1 West V3.Mini
Glass Fish Portfolio C1 West V3.MiniGlass Fish Portfolio C1 West V3.Mini
Glass Fish Portfolio C1 West V3.Mini
 
Virtual Box Aquarium May09
Virtual Box Aquarium May09Virtual Box Aquarium May09
Virtual Box Aquarium May09
 
Introduction To Web Beans
Introduction To Web BeansIntroduction To Web Beans
Introduction To Web Beans
 
Ehcache Architecture, Features And Usage Patterns
Ehcache Architecture, Features And Usage PatternsEhcache Architecture, Features And Usage Patterns
Ehcache Architecture, Features And Usage Patterns
 
OpenDS Primer Aquarium
OpenDS Primer AquariumOpenDS Primer Aquarium
OpenDS Primer Aquarium
 
Fuji Overview
Fuji OverviewFuji Overview
Fuji Overview
 
Nuxeo 5.2 Glassfish
Nuxeo 5.2 GlassfishNuxeo 5.2 Glassfish
Nuxeo 5.2 Glassfish
 

Último

[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdfSandro Moreira
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProduct Anonymous
 
Platformless Horizons for Digital Adaptability
Platformless Horizons for Digital AdaptabilityPlatformless Horizons for Digital Adaptability
Platformless Horizons for Digital AdaptabilityWSO2
 
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...Orbitshub
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyKhushali Kathiriya
 
WSO2's API Vision: Unifying Control, Empowering Developers
WSO2's API Vision: Unifying Control, Empowering DevelopersWSO2's API Vision: Unifying Control, Empowering Developers
WSO2's API Vision: Unifying Control, Empowering DevelopersWSO2
 
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...apidays
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc
 
CNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In PakistanCNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In Pakistandanishmna97
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodJuan lago vázquez
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...apidays
 
MS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsMS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsNanddeep Nachan
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobeapidays
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...apidays
 
Exploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusExploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusZilliz
 
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWEREMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWERMadyBayot
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDropbox
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...apidays
 

Último (20)

[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
Platformless Horizons for Digital Adaptability
Platformless Horizons for Digital AdaptabilityPlatformless Horizons for Digital Adaptability
Platformless Horizons for Digital Adaptability
 
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : Uncertainty
 
WSO2's API Vision: Unifying Control, Empowering Developers
WSO2's API Vision: Unifying Control, Empowering DevelopersWSO2's API Vision: Unifying Control, Empowering Developers
WSO2's API Vision: Unifying Control, Empowering Developers
 
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
CNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In PakistanCNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In Pakistan
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
 
MS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsMS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectors
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
 
Exploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusExploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with Milvus
 
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWEREMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor Presentation
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 

Open Mq Intro

  • 1. Message Queue Product Update Edward Bratt Sr. Manager Sun Microsystems, Inc. 1
  • 2. Open MQ • Premier Open Source, Community MOM platform > Also available with commercial support and license • Provides enterprise level messaging > Publish Subscribe, Point to Point • Complete range of resilience > In-memory pub-sub; distributed persistence store; distributed in-flight data availability > Support for distributed disk clustering > HA support via Sun Cluster or JDBC HA Database • JMX Admin. Interface (or stand-alone client Admin.) Sun Confidential: Internal Only 2
  • 3. Connectivity in MQ • Rich API Support > JMS API > C API – Now with XA support • Simple UMS API > POX, URL-Query-String • Clients connect via TCP/TLS or SOAP / HTTP • JCA Resource Adapter > Supports JMSRA, JMSJCA, GenericRA Sun Confidential: Internal Only 3
  • 4. What's new In MQ • Version 4.2 added > Wild-card Topic Destinations – Added *, **, >, syntax to Topic names > XML Validation – XML messages can be rejected if they fail validation • Version 4.3 adds > Universal Message Service (UMS) – Provides simple API for any web-enabled client – Scriptable URI formed commands or XML documents > Support updates – Windows 2008, Windows Vista, MySQL, MySQL Cluster Edition, AIX (with c API and DB2 support on AIX) Sun Confidential: Internal Only 4
  • 5. Complete Platform Matrix • Sun Solaris 9, 10 – SPARC, x86 – 32 or 64 bit • Linux – Red Hat 4 & 5 • Windows – XP, Vista, 2003 Server, 2008 Server • AIX – 6.1 • Other Platforms > GlassFish Distributions include – Ubuntu, Macintosh OSX • JDBC Databases > MySQL (Community, Enterprise Cluster) > Oracle 10, 11 > HADB (GlassFish Enterprise Server, HA Profile) > Java DB > Postgresql > DB2 (AIX Only) • JDK 1.5, 1.6.0_10* Sun Confidential: Internal Only 5
  • 6. Performance, 4.3 Compared To 4.2 • Overall performance improved 8% % Improvement MQ 4.3 over MQ 4.2 14% • HADB performance is 13% 12% improved by 3x! 11% % Improvement 10% 9% > Optimized queries 8% 7% 6% > Reduced serialization 5% caused by HADB 4% 3% implementation 2% 1% 0% Overall Queue All Queue NP Topic All Topic P Queue P Topic NP Sun Confidential: Internal Only 6
  • 7. MQ Connectivity Java EE – e.g. GlassFish 2.1 MDB ContainerEJB Container Web Container JMS Servlet UMS Servlet MDB EJB / JMS JM JMS RA RA S JMS Client MQ Broker (Cluster) MQ MQ MQ C/C++ Broker Broker Broker Client Sun Confidential: Internal Only 7
  • 8. Community Information • Open MQ Wiki > Community examples – Samples for Spring integration – Samples for STOMP Connect Stream Oriented Messaging Protocol – – jRuby example – Setup instructions for Hermes JMS > FAQs – Many sections – Internal commands, JDBC, Private APIs, JMX, Etc • Lots of info. In Users alias and Forum Sun Confidential: Internal Only 8
  • 9. Where to look further • Open MQ project site – Community version > https://mq.dev.java.net > Don't forget to check the wiki at – http://wiki.glassfish.java.net/Wiki.jsp?page=OpenMessageQueue • Java MQ product – Commercial version > http://sun.com/software/products/message_queue • JMQ Product Manuals > http://docs.sun.com/coll/1307.6 • Questions or other comments > Community Mailing List: mailto:users@mq.dev.java.net > User Forum: http://forum.java.sun.com/forum.jspa?forumID=711 Sun Confidential: Internal Only 9
  • 11. Universal Message Service • UMS is a very simple API • It is implemented as a WebApp > Deployed to any web container (GlassFish, Tomcat, GF v3Prelude) • Simple to configure Sun Confidential: Internal Only 11
  • 12. UMS – Simple Yet Powerful • Simple API Login (optional) > Send > Receive > Commit (optional) > Rollback (optional) > Close (optional) > • Supports HTTP or HTTPS • For stateless clients (i.e. No login/logout) limited only by throughput requirements • Support many stateful clients per JMS connection > Default is 100 stateful clients per connection Sun Confidential: Internal Only 12
  • 13. UMS Interface Types • Simple messaging with HTTP URL query string > Post /ums/simple?service=send&destination=myQueue Hello, World! • XML Document <SOAP-ENV:Envelope xmlns:SOAP-ENV=quot;http://schemas.xmlsoap.org/soap/ envelope/quot;> <SOAP-ENV:Header> <ums:MessageHeader xmlns:ums=quot;https://mq.dev.java.net/umsquot; ums:id=quot;1.0quot; ums:version=quot;1.0quot;> <ums:Service ums:service=quot;sendquot; ums:destination=quot;myQueuequot; ums:domain=quot;queuequot; ums:sid=quot;7-LTgxMDczMTczNQ== quot;/> </ums:MessageHeader> </SOAP-ENV:Header> <SOAP-ENV:Body><bodyvalue>Hello, World!</bodyvalue></SOAP-ENV:Body> </SOAP-ENV:Envelope> Sun Confidential: Internal Only 13
  • 14. Universal Message Service • Why mess with JMS? > JMS is a very rich and stable API > JMS is designed for back-end messaging • Goal is to allow any web enabled client to easily access this back-end > Provide a simpler API > Scripting languages; Compiled languages > Lower deployment overhead – Reduce or eliminate deployment issues with client runtime • Ubiquity of XML and URI query Sun Confidential: Internal Only 14
  • 15. Demo. Setup • If you want to follow along with the demo you'll need > MQ 4.3 – http://sun.com/software/products/message_queue/get.jsp > GlassFish v3 Prelude – http://sun.com/software/products/glassfishv3_prelude/get.jsp > To run the Python sample, you'll need Python – http://python.org/download/releases/2.5.2/ > The C# example only works in Windows operating environment. Sun Confidential: Internal Only 15
  • 16. Demonstration • Start the MQ Broker > Imqbrokerd -tty • Deploy UMS.war to your web container > Asadmin start-domain > Asadmin deploy ums.war ($mq-home/mq/lib/ums/imqums.war) • Point your browser to > http://localhost:8080/ums/ • Select “Examples” link • Try the Ajax Send and Receive • Send w/Python; Receive w/C# > python SendSOAPMsg.py -s localhost:8080 -f <filename> > ReceiveSOAPMsg.exe -s localhost:8080 Sun Confidential: Internal Only 16
  • 18. UMS Deployment ••• JRuby C# Python AJAX HTTP/S Web Container – ex. GlassFish v3 Prelude Web Container JMS UMS Servlet JMS MQ Broker (Cluster) MQ MQ MQ Broker Broker Broker Sun Confidential: Internal Only 18
  • 19. UMS vs. JMS • UMS is not a JMS replacement • Use UMS for low volume clients > Particularly useful with scripted applications > Suitable for many clients, each at relatively low volume – Client messaging measured in messages per minute – Tens of Thousands of active clients, perhaps more > No client runtime to distribute or manage • Use JMS (Java or C) for traditional settings > Highest throughput, supports (relatively) fewer clients – Client messaging measured in hundreds to thousands per second – Hundreds to thousands of clients > Much richer control > Runtime deployment must be managed Sun Confidential: Internal Only 19
  • 20. Where to look further • Open MQ project site – Community version > https://mq.dev.java.net > Don't forget to check the wiki at – http://wiki.glassfish.java.net/Wiki.jsp?page=OpenMessageQueue • UMS details are in the WAR and online at > https://mq.dev.java.net/4.3-content/ums/umsMain.html • JMQ Product Manuals > http://docs.sun.com/coll/1307.6 • Questions or other comments > Community Mailing List: mailto:users@mq.dev.java.net > User Forum: http://forum.java.sun.com/forum.jspa?forumID=711 Sun Confidential: Internal Only 20
  • 21. Message Queue Product Update Edward Bratt ed.bratt@sun.com 21