shoal
  1. shoal
  2. SHOAL-29

API to Signal to group that each member's application is ready to start operations

    Details

    • Type: New Feature New Feature
    • Status: Resolved
    • Priority: Major Major
    • Resolution: Fixed
    • Affects Version/s: current
    • Fix Version/s: milestone 1
    • Component/s: GMS
    • Labels:
      None
    • Environment:

      Operating System: All
      Platform: All

    • Issuezilla Id:
      29

      Description

      Parent applications employing Shoal typically using
      GMSFactory.startGMSModule(...) API might find it limiting that Shoal's group
      JoinNotificationSignal signifies the application employing it to be ready to
      start its operations. This is particularly the case when products that have
      sequences of services that have to be started that need to be part of a group
      early on but also need the ability to know when the app is ready to be operated
      upon.
      For instance, where a load balancer is employing Shoal as the health monitoring
      system by participating in it as a SPECTATOR member, and the cluster it is load
      balancing also uses Shoal, the LB needs to know when the instances are ready to
      accept requests.

      Further, appserver instances in the cluster may want to know when an instance is
      in ready state so that operations such as say, data replication can occur.
      This RFE is for a JoinedAndReadyNotificationSignal which would signify to all
      members of the group that the member is not only joined the group but is also
      ready to start operations.

      Additionally, the JoinNotificationSignal requires an additional API to return
      the joined member's health state through a method getMemberState(). This would
      cover for cases where an instance has already sent out a
      JoinedAndReadyNotificationSignal and another instance needs to know the health
      state of this member.
      The state machine of an instance's startup should be starting, ready and then
      alive. Both ready and alive signify an instance's ready and available state.

        Activity

        Show
        shreedhar_ganapathy added a comment - Sheetal and I have checked in this feature through various cvs checkins. https://shoal.dev.java.net/servlets/ReadMsg?list=cvs&msgNo=503 https://shoal.dev.java.net/servlets/ReadMsg?list=cvs&msgNo=497 https://shoal.dev.java.net/servlets/ReadMsg?list=cvs&msgNo=496 https://shoal.dev.java.net/servlets/ReadMsg?list=cvs&msgNo=495 https://shoal.dev.java.net/servlets/ReadMsg?list=cvs&msgNo=494 https://shoal.dev.java.net/servlets/ReadMsg?list=cvs&msgNo=492 https://shoal.dev.java.net/servlets/ReadMsg?list=cvs&msgNo=485 https://shoal.dev.java.net/servlets/ReadMsg?list=cvs&msgNo=469 We may need to expose an API that allows applications to query the state of members through GroupHandle.

          People

          • Assignee:
            sheetalv
            Reporter:
            shreedhar_ganapathy
          • Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved: