|
JMS Interview Questions and Answers
What is the main parts of JMS applications?
The main parts of JMS applications are:
--ConnectionFactory and Destination
--Connection
--Session
--MessageProducer
--MessageConsumer
--Message
What Is Messaging?
Messaging is a method of communication between software
components or applications. A messaging system is a
peer-to-peer facility: A messaging client can send
messages to, and receive messages from, any other
client. Each client connects to a messaging agent that
provides facilities for creating, sending, receiving,
and reading messages.
Messaging enables distributed communication that is
loosely coupled. A component sends a message to a
destination, and the recipient can retrieve the message
from the destination. However, the sender and the
receiver do not have to be available at the same time in
order to communicate. In fact, the sender does not need
to know anything about the receiver; nor does the
receiver need to know anything about the sender. The
sender and the receiver need to know only what message
format and what destination to use. In this respect,
messaging differs from tightly coupled technologies,
such as Remote Method Invocation (RMI), which require an
application to know a remote application's methods.
Messaging also differs from electronic mail (e-mail),
which is a method of communication between people or
between software applications and people. Messaging is
used for communication between software applications or
software components.
Messaging is a mechanism by which data can be passed
from one application to another application.
What is the Role of the JMS Provider?
The JMS provider handles security of the messages, data
conversion and the client triggering. The JMS provider
specifies the level of encryption and the security level
of the message, the best data type for the non-JMS
client.
What is the diffrence between Java Mail and JMS Queue
JMS is the ideal high-performance messaging platform for
intrabusiness messaging, with full programmatic control
over quality of service and delivery options.
JavaMail provides lowest common denominator, slow, but
human-readable messaging using infrastructure already
available on virtually every computing platform.
Does JMS specification define transactions? Queue
JMS specification defines a transaction mechanisms
allowing clients to send and receive groups of logically
bounded messages as a single unit of information. A
Session may be marked as transacted. It means that all
messages sent in a session are considered as parts of a
transaction. A set of messages can be committed
(commit() method) or rolled back (rollback() method). If
a provider supports distributed transactions, it's
recommended to use XAResource API.
What is synchronous messaging? Queue
Synchronous messaging involves a client that waits for
the server to respond to a message. So if one end is
down the entire communication will fail.
What is asynchronous messaging? Queue
Asynchronous messaging involves a client that does not
wait for a message from the server. An event is used to
trigger a message from a server. So even if the client
is down , the messaging will complete successfully.
How does a typical client perform the communication?
Queue
1. Use JNDI to locate administrative objects.
2. Locate a single ConnectionFactory object.
3. Locate one or more Destination objects.
4. Use the ConnectionFactory to create a JMS Connection.
5. Use the Connection to create one or more Session(s).
6. Use a Session and the Destinations to create the
MessageProducers and MessageConsumers needed.
7. Perform your communication.
What is JMS session? Queue
A single-threaded context for sending and receiving JMS
messages. A JMS session can be nontransacted, locally
transacted, or participating in a distributed
transaction.
What is the use of JMS? In which situations we are using
JMS? Can we send message from one server to another
server using JMS? Queue
JMS is the ideal high-performance messaging platform for
intrabusiness messaging, with full programmatic control
over quality of service and delivery options.
What is the difference between durable and non-durable
subscriptions?
Point-To-Point (PTP). This model allows exchanging
messages via queues created for some purposes. A client
can send and receive messages from one or several
queues. PTP model is easier than pub/sub model.
A durable subscription gives a subscriber the freedom of
receiving all messages from a topic, whereas a
non-durable subscription doesn't make any guarantees
about messages sent by others when a client was
disconnected from a topic.
Page Numbers : 1
2
3
4
5
6
Have a Question ?
post your questions here. It
will be answered as soon as possible.
Check
Java Interview
Questions for more Java Interview Questions with answers
Check
Structs Interview
Questions for more Structs Interview Questions with answers
Check
Servlet Interview
Questions for more Servlet Interview Questions with answers
|