A 1.7 GB MariaDB process looked like the obvious culprit. The real problem was a PHP script with no memory limit and a server with no swap.
Debian ships the setting commented out, so a multi-gigabyte database runs on a 128 MB cache and burns CPU re-reading the same pages forever.
No roundups, no “5 tools you must try.” Just the posts, when there is something worth sending.