a run ppt

Upload: sachin-aggarwal

Post on 07-Apr-2018

213 views

Category:

Documents


0 download

TRANSCRIPT

  • 8/6/2019 A Run Ppt

    1/17

    JMS

  • 8/6/2019 A Run Ppt

    2/17

    JMS

    The Java Message Service

    (JMS)API is a Java MessageOrientedMiddleware (MOM) APIfor sending messages betweentwo or more clients. and isdefined by a specificationdeveloped under the JavaCommunity Process

  • 8/6/2019 A Run Ppt

    3/17

    Continue

    It is a messaging standard that allows

    application components based on the Java 2Platform, Enterprise Edition (J2EE) to create,

    send, receive, and read messages. It allows

    the communication between different

    components of a distributed application to beloosely coupled, reliable, and asynchronous.

  • 8/6/2019 A Run Ppt

    4/17

    What Is Messaging?

    Messaging is a form ofloosely coupleddistributedcommunication, where in this context the term

    'communication' can be understood as an exchange

    of messages between software components.

    Message-oriented technologies attempt to relax

    tightly coupledcommunication (such as TCPnetwork sockets, RMI) by the introduction of an

    intermediary component.

  • 8/6/2019 A Run Ppt

    5/17

    Continue.

    The latter approach allows software components to

    communicate 'indirectly' with each other. Benefits ofthis include message senders not needing to have

    precise knowledge of their receivers.

    The advantages of messaging include the ability to

    integrate heterogeneous platforms, reduce system

    bottlenecks, increase scalability, and respond morequickly to change.

  • 8/6/2019 A Run Ppt

    6/17

    Jms versions

    Jms 1.0.2b

    Jms 1.1

  • 8/6/2019 A Run Ppt

    7/17

  • 8/6/2019 A Run Ppt

    8/17

    Jms models

    The JMS API supports two models:

    Point-to-point Publish and subscribe

  • 8/6/2019 A Run Ppt

    9/17

    Point-to-point model

    In the point-to-point model, a senderposts

    messages to a particular queue and areceiverreads messages from the queue.

    Here, the sender knows the destination of

    the message and posts the message directly

    to the receiver's queue.

  • 8/6/2019 A Run Ppt

    10/17

    Characteristics ofpt. topt. model

    Only one consumer gets the message.

    The producer does not have to be running atthe time the consumer consumes the

    message, nor does the consumer need to be

    running at the time the message is sent.

    Every message successfully processed is

    acknowledged by the consumer.

  • 8/6/2019 A Run Ppt

    11/17

    Publish/subscribe model

    The publish/subscribe model supports

    publishing messages to a particular messagetopic. Subscribers may register interest in

    receiving messages on a particular message

    topic. In this model, neither thepublishernor

    the subscriber knows about each other. Agood analogy for this is an anonymous

    bulletin board.

  • 8/6/2019 A Run Ppt

    12/17

    characteristics ofpublish/subscibermodel

    Multiple consumers (or none) will receive themessage.

    There is a timing dependency between publishersand subscribers. The publisher has to create amessage topic for clients to subscribe. Thesubscriber has to remain continuously active toreceive messages, unless it has established adurable subscription. In that case, messagespublished while the subscriber is not connected willbe redistributed whenever it reconnects.

  • 8/6/2019 A Run Ppt

    13/17

    other

    Using Java, JMS provides a way of separating the

    application from the transport layer of providing data.The same Java classes can be used to

    communicate with different JMS providers by using

    the JNDI information for the desired provider. The

    classes first use a connection factoryto connect to

    the queue or topic, and then use populate and sendor publish the messages. On the receiving side, the

    clients then receive or subscribe to the messages.

  • 8/6/2019 A Run Ppt

    14/17

    Provider implementations

    To use JMS, one must have a JMS provider

    that can manage the sessions and queues.Starting from Java EE version 1.4, JMS

    provider has to be contained in allJava EE

    application servers. This can be implemented

    using the message inflow management ofthe Java EE Connector Architecture, which

    was first made available in that version.

  • 8/6/2019 A Run Ppt

    15/17

    Listof jms providers

    Apache ActiveMQ

    Apache Qpid BEA Weblogic, part of the Oracle Fusion Middleware

    suite

    FUSE Message Broker from Progress Software

    (based on Apache ActiveMQ

    ) OpenJMS, from The OpenJMS Group

    JBoss Messaging from JBoss

    HornetQ from JBoss

  • 8/6/2019 A Run Ppt

    16/17

    Continue

    HornetQ from JBoss

    JORAM, from the OW2 Consortium

    Open Message Queue, from Sun Microsystems

    Oracle AQ

    RabbitMQ, using AMQP

    Solace JMS from Solace Systems

    SonicMQ from Progress Software

    WebSphere Application Server from IBM

    WebSphereMQ from IBM (formerlyMQSeries)

    Ultra Messaging from 29 West (acquired by Informatica)

  • 8/6/2019 A Run Ppt

    17/17