You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 3 Next »

In the current implementation, ACM supports multi-participant with same supported element Type but different participantId, so they need different properties file.

In order to support replica, it needs to support multi-participant using same properties file.

Solution 1:

Add dynamic participantId support.

Changes in Participant:

  • UUID participantId will be generated in memory instead to fetch it in properties file.
  • cosumerGroup will be empty (kafka configuration): any participant will have unique Kafka queue.

Changes in ACM-runtime:

  • When participant go OFF_LINE:
    • if there are compositions connected to that participant, ACM-runtime will find other ON_LINE participant with same supported element type;
    • if other ON_LINE participant is present it will change the connection with all compositions and instance;
    • after that, it will execute restart for all compositions and instances to the ON_LINE participant.
  • When receive a participant REGISTER:
    • it will check if there are compositions connected to a OFF_LINE participant with same supported element type;
    • if there are, it will change the connection with all compositions and instances to that new registered participant;
    • after that it will execute restart for all compositions and instances changed.

Solution 2:

Add a no-sql database support for participant.

Changes in Participant:

  • Add client support for no-sql database
  • Add repository support
  • Refactor CacheProvider to support insert/update
  • Add Transactional support
  • Refactor Participants that are using own cache in memory (Policy Participant saves policy and policy type in memory)

Changes in docker/Kubernetes environment

  • Refactor CSIT to support no-sql database
  • Refactor performance and stability test to support no-sql database
  • Refactor OOM to support no-sql database

Changes in ACM-runtime:

  • Refactor restarting scenario to apply the restarting only for compositions and instances in transition


  • No labels