Messaging lets a servlet delegate processing to a batch process either on the same machine or on a separate machine. The servlet creates a message and sends it to a queue. The servlet immediately completes and when the batch process is ready, it processes the message.
Messaging is therefore comprised of three main components:
A Producer creates messages and sends them to a Queue. The Producer could be something like a Servlet.
A Queue stores the messages from the Produces and provides them to a Consumer when ready. The Queue is implemented by the messaging provider.
A Consumer processes messages as they become available in the Queue. The Consumer is typically a bean implementing the MessageListener interface.
Is it helpful?
Add CommentView Comments
Ques 27. How many messaging models do JMS provide for and what are they?
JMS provide for two messaging models, publish-and-subscribe and point-to-point queuing.
Is it helpful?
Add CommentView Comments
Ques 28. Can JMS utilities automatically re-establish a connection if one side of the communication link (i.e. an application that's sending/receiving messages) goes down and is restarted? Are there APIs to help detect that the other side broke a connection (went down)?
Yes. You can write a snooper files to detect the service and restart the node upon node fail and a server instance fail.
Is it helpful?
Add CommentView Comments
Ques 29. 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.
Is it helpful?
Add CommentView Comments
Ques 30. What is Byte Message?
Byte Messages contains a Stream of uninterrupted bytes. Byte Message contains an array of primitive bytes in it's payload. Thus it can be used for transfer of data between two applications in their native format which may not be compatible with other Message types. It is also useful where JMS is used purely as a transport between two systems and the message payload is opaque to the JMS client.