New answers tagged memory-usage
In general there are a couple of points you need to take care of Make sure that the database tables are correctly designed and indexed is essential. So, you should have proper column data types according to data stored, and indices on columns that are used for SELECTs / JOINs. Use caching for data that does not need to be fresh on every page load. ...
You need to put monitoring in place to gather metrics and use Scientific Method to identify bottlenecks. You can then plan, implement and test solutions. Iterate as required.
There is more monitoring tools for Docker, not only cAdvisor - http://veggiemonk.github.io/awesome-docker/#monitoring But all of them read metric value for period, which is usually >1sec. If you need to monitor peaks with ms resolution, then you need to code your own solution. TBH: 1 sec metric resolution is enough for 99% (non realtime) applications.
Give Cadvisor a try. The interface is pretty basic, but it has everything you are looking for.
From man: Address: start address of map Kbytes: size of map in kilobytes RSS: resident set size in kilobytes Dirty: dirty pages (both shared and private) in kilobytes Mode: permissions on map: read, write, execute, shared, private (copy on write) Mapping: file backing the map, or '[ anon ]' for allocated memory, or '[ stack ]' for the program stack
I write a very simple shell script to show the cached files by using of linux-fincore. Since cache is one part of memory, my code is find the top 10 RSZ usage of process, and the use lsof to find out the files that process opened, finally use linux-fincore to find out whether these files are cached or not. Please correct me if I am thinkg wrong. #!/bin/...
Top 50 recent answers are included