Distributed messaging consistency

   1. Active first message to the message recipient application middleware, message status is marked as "to be confirmed";
   2. middleware message received message, the message to the message store persistent, but not applied to the passive delivery side message;
   3. persistent messaging middleware message returns result (success / failure), the active side applications return results determined according to how the service operation process:

    failed: give up the operational process is terminated (necessary when the failure result is returned to the upper layer);
    success: performing operational processing;

   4. business operation is completed, the operational result (success / failure) to the middleware message;
   5. after receiving the service message middleware operation result, treated according to the results of operations;

    failure: delete message stored in the message, ending;
    success: status update message in the message store is "to be sent (transmittable)", the message delivery is performed next;

   6. forward foregoing processes are successful, the application delivery message to the passive side ;

Thinking achieved

    as compared with the above embodiment of the message service subsystem implemented independently

    unsolicited message sent pre-transmission applications, a pre-stored message service subsystem sends a message pre-send status is not, and returns the operation result of

    an unsolicited message transmitted successfully applied in the pre-premise at the beginning of business operations

    unsolicited application to send the results to the operational messaging system

    messaging system to confirm and send a message, and the message status is set to send the

    MQ forward the message to other business systems

    message status query confirm message service subsystems or subsystem status pre timeout messages sent, message and query processing in the case of the active side of the application system. If unsolicited business operation failed This message is deleted. If the operation is successful then the active side business changed the status to be sent, and send the information to the MQ

    message recovery system: those used to query timeout unprocessed state messages and set the delay send

advantages:

    messaging services deployed independently, separate maintenance, independent telescopic
    can select the desired message store to integrate different databases implemented
    message service may be using the same common scene cost duplication message service
    from the viewpoint of design and development of applications (distributed service) to achieve reliability of message data, the message data the reliability is not dependent on the MQ middleware, weakening the dependence on the characteristics of the MQ middleware
    reduces the coupling between business systems and information systems, in favor of expansion of the system maintenance

 

 

 

Guess you like

Origin www.cnblogs.com/wushenghfut/p/11260207.html
Recommended