For some testing, I wanted to watch number of open files by process and memory consumed (1) by all the processes (2) of same name to get some global overview. Graphing this over time is another exercise which can show trends.
E.g. following number of open files (includes all libraries loaded by a binary, opened sockets...) comes from freshly installed Spacewalk server from last evening and it is not surprising IMO:
# lsof | cut -d ' ' -f 1 | sort | uniq -c | sort -n | tail 121 cobblerd 121 sshd 122 gdbus 131 master 264 gssproxy 282 gmain 344 tuned 1256 httpd 4390 postgres 25432 java
And this is total memory per processes with same name from same server - again nothing unexpected:
# ps --no-headers -eo rss,comm >a; for comm in $( sed 's/^\s*[0-9]\+\s*\(.*\)$/\1/' a | sort -u ); do size=$( grep "\s$comm" a | sed 's/^\s*\([0-9]\+\)\s*.*$/\1/' | paste -sd+ - | bc ); echo "$size $comm"; done | sort -n | tail 16220 tuned 18104 beah-fwd-backen 18664 beah-srv 23544 firewalld 24432 cobblerd 26088 systemd 26176 beah-beaker-bac 71760 httpd 227900 postgres 1077956 java
BTW man ps
says following about RSS (which is used above):
resident set size, the non-swapped physical memory that a task has used (in kiloBytes).