Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

  • In a scenario of high number of compositions, if participant is restarting it will be slow-down the restarting action: AC-runtime will send a message for each composition primed and instance deployed to the participant.
    To avoid the restarting action, participant needs a database support;
  • In a scenario where a participant is stuck in deploying, the instance will be in TIMEOUT and the user can take action like deploy again or undeploy. In that scenario the intermediary-participant has to receive the next message, kill the thread that is stuck in deploying and create a new thread.
  • In a scenario where we are increasing the number or participants, could be useful to have different topic name for source and sink. This solution will eliminate the number of useless messages in kafka.
    Example: 
    • for ACM-runtime:
      • sink: POLICY-ACM-PARTICIPANT
      • source: POLICY-ACM-RUNTIME
    • for participant: 
      • sink: POLICY-ACM-RUNTIME
      • source: POLICY-ACM-PARTICIPANT


PlantUML Macro
@startuml


alt "Deploying the instance"
  activate "ACM Runtime"
  "ACM Runtime" -> "Participant-intermediary" : [ASYNC] Deploying the instance
  deactivate  "ACM Runtime"

  activate "Participant-intermediary"
  activate Participant
  "Participant-intermediary" -> Participant : Create Deploy thread
  deactivate "Participant-intermediary"
  note right
  Deploy thread is stuck
  end note
end

alt "Instance in Timeout"
  activate "ACM Runtime"
  "ACM Runtime" -> "ACM Runtime" : set instance in Timeout
  deactivate  "ACM Runtime"
end

alt "Undeploying the instance"
  activate "ACM Runtime"
  activate "Participant-intermediary"
  "ACM Runtime" -> "Participant-intermediary" : [ASYNC] Undeploying the instance
  deactivate  "ACM Runtime"
  "Participant-intermediary" -> Participant : Terminate Deploy thread
  deactivate Participant
  "Participant-intermediary" -> Participant : Create Undeploy thread
  activate Participant
  deactivate "Participant-intermediary"
  Participant -> "Participant-intermediary" : instance Undeployed
  activate "Participant-intermediary"
  deactivate Participant
  "Participant-intermediary" -> "ACM Runtime" : [ASYNC] instance Undeployed
  deactivate "Participant-intermediary"
end

@enduml

...