Change Monitor stat history to sync.Map#3007
Conversation
|
Refer to this link for build results (access rights to CI server needed): |
f997480 to
480d6c2
Compare
|
Refer to this link for build results (access rights to CI server needed): |
|
Refer to this link for build results (access rights to CI server needed): |
|
Refer to this link for build results (access rights to CI server needed): |
f2368c1 to
f234499
Compare
|
Refer to this link for build results (access rights to CI server needed): |
|
Refer to this link for build results (access rights to CI server needed): |
This significantly improves performance. In my testing, for a large CDN, processing Stat results can take ~5 seconds, where ~1s of that was copying and setting the mutexed stat history variable. This essentially eliminates that 1s or 1/5 of stat processing time, for every stat process. This significantly reduces CPU, and/or makes the monitor able to poll stats in significantly less time. Also changes the stat history array to not reallocate memory, but move the data when prepending a new result. Which is also significantly faster, in my testing.
As required by PR Review.
d94b6db to
19b1255
Compare
|
Refer to this link for build results (access rights to CI server needed): |
What does this PR do?
Based on #3000 - recommend merging that first.
Change Monitor stat history to sync.Map
Which TC components are affected by this PR?
What is the best way to verify this PR?
Run Monitor, verify health and stats are polled correctly. This PR does not change the interface; it's an internal performance improvement.
Check all that apply