Uploaded image for project: 'Traffic Server'
  1. Traffic Server
  2. TS-4612

Proposal: InactivityCop Optimize

    XMLWordPrintableJSON

Details

    • Improvement
    • Status: Resolved
    • Major
    • Resolution: Fixed
    • None
    • 7.1.0
    • Core, Network
    • None

    Description

      By review the processing of InactivityCop::check_inactivity():

      1. get all local vc from open_list
      2. put them into cop_list
      3. check every vc in cop_list if it is already timeouted
      4. callback vc->handleEvent to close vc if it is timeout

      InactivityCop and NetHandler share one mutex.
      InactivityCop runs every second, NetHandler runs every 10ms, that means Nethandler runs 100 times until next InactivityCop runs.

      if one vc has read/write in a Nethandler call, it is won't be timeout in the next InactivityCop run.

      Thus, if the vc has read/write in Nethandler, we move it out of cop-list then the InactivityCop runs would get better performace.

      Attachments

        Issue Links

          Activity

            People

              oknet Chao Xu
              oknet Chao Xu
              Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved:

                Time Tracking

                  Estimated:
                  Original Estimate - Not Specified
                  Not Specified
                  Remaining:
                  Remaining Estimate - 0h
                  0h
                  Logged:
                  Time Spent - 5h 50m
                  5h 50m