Skip to content

Problems

Lamond Lu edited this page Nov 16, 2017 · 5 revisions

As an distributed project, how to notify the clients that the command has been finished?[Resolved]

  • Every command have an unique id(It is auto-generated when the command object initialized.)
  • Every domain event have an commandUniqueId which stand for the unique id of command.
  • We need to use the SignalR to push the command result, so every clients need open an SignalR connection.
  • When an command is published in the api side, the api will return unique id of assigned command to the clients.
  • Every domain event which is triggered by the assigned command, will hold the unique id of the assigned command.
  • When the last domain event finished(success or failure), it will send the result with the unqiue id of assigned command to the SignalR server.
  • All the clients will retrieve the message, if the client hold an same unique id, it will show the success or error message and do the follwing opeation.

How to prevent the RabbitMQ consumer from consuming one message again if got some issue when consuming this message?

How to justify the server has overloaded?