-
Notifications
You must be signed in to change notification settings - Fork 392
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
why Get
sometimes become slow
#106
Comments
it use Lock in get。 |
What's the hardware and OS environment? |
we have 3 pods, each pod has 2 CPUs and 6G memory. the OS environment is Alpine. According to the log, there is no other request at our test time. |
according to the flame graph, it seems spent little time on Lock |
I allocate 3G memory for cache. The size of cached data is about 10m terms and the cache memory is almost full.
When I use
cache.Get()
, I found sometimes it will cost much time in getting some items.The flame graph shows
cache.Get()
spent a lot of time inlookup()
andentryPtrIdx()
However, after I restart the server and rebuild the cache with the same data(maybe not in the same order), the performance issue disappears. The CPU time of the whole process decreases from more than 10 seconds to 0.X second.
Is there any factor that will affect this performance? The position of data? The data is evicted?
The text was updated successfully, but these errors were encountered: