After much consideration, I finally moved away from Apache & mod_php to NginX & PHP FPM. The site works much faster and no more I/O & CPU issues. I suspect my Apache was hacked last time, resulting in weird I/O behaviour and spikes in CPU usage.
The next steps:
- Install uWSGI for Python and Ruby
- Run NodeJS behind NginX proxy
- Enable WebSockets for NginX & NodeJS