The key design difference is Node.js is event-based and non-blocking. This means one Node.js process can serve many hundreds of client requests. This is like nginx, for example, and unlike Apache. With Apache, each request gets its own child process. Busy sites using Node.js can handle a lot more traffic while using less memory, and probably fewer CPU cycles as well.