In accordance with the present invention, a messaging system utilizes a local
queue manager to receive messages intended for other processes. Messages received
by the local queue manager are stored onto a local persistent storage device when
a process sending the message has completed the sending action. The local queue
manager then sends the message to an appropriate recipient. When the message has
been received and confirmed, the recipient removes the message from the persistent
storage device. If a hardware or software failure occurs, the message is stored
and can be re-sent after the failure is corrected. In certain embodiments, a message
writer is operable to communicate the message to the receiving process and remove
the message from the queue after sending it to the receiving process. In certain
embodiments, a message communicated by the sending process comprises a first format,
and a message collector is operable to format the message received from the sending
process into a standard format for transport to the local queue manager and storage
on the persistent storage device.