Click here to view and discuss this page in DocCommentXchange. In the future, you will be sent there automatically.

SQL Anywhere 11.0.0 » QAnywhere » Creating QAnywhere Applications » Introducing QAnywhere technology


QAnywhere message delivery

Messages are sent from a client message store to a server message store, and then on to another client message store. QAnywhere does this via queues: a message is put on a queue in the client message store; when it is received by the server message store, it is put on a queue for delivery to one or more client message stores; and when it is received by a client message store, it is put on a queue for pickup.

Once a message is sent, it gets delivered unless one of the following occurs:

  • The message expires (only if an expiration is specified).
  • The message is canceled via Sybase Central.
  • The device from which the message is sent is lost unrecoverably before it can synchronize with the server message store (or for some other reason, synchronization is impossible).

A message does not get delivered more than once. If an application successfully acknowledges or commits the receipt of a message, then the same message is not delivered again. There is a possible exception with JMS servers: in the event of the MobiLink server or JMS server crashing, there is a possibility that a message could get delivered twice.