Uploaded image for project: 'Apache Storm'
  1. Apache Storm
  2. STORM-872

Expose interfaces to give users opportunity to customize "executor" heartbeat module

    XMLWordPrintableJSON

Details

    • Improvement
    • Status: Resolved
    • Major
    • Resolution: Duplicate
    • None
    • None
    • storm-core
    • None

    Description

      I have seen questions, papers and slides addressing heartbeat timeout, and most of these point out ZK is the reason.

      ZK has a hard limit of throughput and reading / writing disk is the matter.
      Throughput would be far more better when we're dealing worker heartbeat with in-memory storage directly, or heartbeat daemon which can scale well.
      (Trade-off could be made.)

      If we can open the interface of worker heartbeat module, and give users opportunities to customize it, it would be really great.

      • Why I'm narrowing heartbeat to "worker" only?
        • I was thinking "supervisor" heartbeat too, but it uses ephemeral node of ZK, which is normally not supported to other storage.
        • And in Scaling Storm, p15, about 99.2% of ZK workload is worker heartbeats. I think ZK can take care of supervisor heartbeat without problem.
          • default of "supervisor.heartbeat.frequency.secs" is 5
          • default of "task.heartbeat.frequency.secs" is 3
        • I didn't think about "worker to supervisor" heartbeat cause it uses local file system.

      Attachments

        Issue Links

          Activity

            People

              Unassigned Unassigned
              kabhwan Jungtaek Lim
              Votes:
              1 Vote for this issue
              Watchers:
              3 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: