Uploaded image for project: 'Data Management'
  1. Data Management
  2. DM-18341

implement the multi-cast alternate recommended by DM-17601

    Details

    • Type: Story
    • Status: Done
    • Resolution: Done
    • Fix Version/s: None
    • Component/s: Firefly
    • Labels:
      None
    • Story Points:
      20
    • Epic Link:
    • Sprint:
      SUIT Sprint 2019-04, SUIT Sprint 2019-05
    • Team:
      Science User Interface

      Description

      Using multi-cast to do service discovery does not work in GKE environment, and also it requires low-level hardware configuration. DM-17601 was created to explore the alternate way to accomplish service discovery. It recommended using redis. This is the implementation ticket. 

       

      <text taken from PR>

      Objective:
      The objective is to implement an alternative to multicast cache peer discovery mechanism. Multicast is not supported in the cloud, making Firefly unable to scale horizontally.

      The implemented alternative is to use a publish-subscribe messaging system for peer discovery. The flow is similar to multicast in which it relies on a periodic heartbeat message from each active peer to determine ‘liveliness’. Subscribing to the same channel determine the membership of the group.

      Implementation Details:
      A custom CachePeerProviderFactory is created to determine which discovery mechanism to use based on configuration.
      Messaging is implemented using Redis server and Jedis client. The preferred deployment of Redis is via Docker. Jedis dependencies were added to Firefly.

       

        Attachments

          Issue Links

            Activity

              People

              • Assignee:
                loi Loi Ly
                Reporter:
                xiuqin Xiuqin Wu [X] (Inactive)
                Reviewers:
                Tatiana Goldina, Trey Roby
                Watchers:
                Emmanuel Joliet, Gregory Dubois-Felsmann, Loi Ly, Tatiana Goldina, Trey Roby, Xiuqin Wu [X] (Inactive)
              • Votes:
                0 Vote for this issue
                Watchers:
                6 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved:

                  Summary Panel