Начнем с того, что речь идет об JavaScript, а не о Java - разные языки. Если по-простецки, то PHP формирует и отдает html-страницу. Да, в зависимости от разных факторов (и погодных условий ) PHP может отдавать разный html, но в любом случае в браузер приходит статический html-код. Так же следует понимать, что раз сервер формирует эту страницу, то сервер и "напрягается". При неоптимизированном PHP-коде туго придется именно серверу. После того, как браузер получил от сервера эту html-страницу, задача по "оживлению" её уже ложится на плечи JavaScript'а. Падающие снежинки на сайте, слайдеры, попапы, изменение контента в определенном блоке без перезагрузки страницы (AJAX - не язык, лишь веб-технология на базе JavaScript). И тут уже следует понимать, что JS-скрипты исполняются браузером клиентской машины. И это не обязательно мощный стационарник с n-ядровомым процом. Это может быть и дохленький китайский планшет, или мобильник, или даже терминал в магазине. И от плохооптимизированного JavaScript туго придется машинке клиента. Если речь идет об регистрации/авторизации (работа с базой и/или почтовыми сообщениями), то подобный функционал логичнее реализовать на серверном языке (PHP). Как, собственно, и cms. Но, как выше уже писали, на JavaScript реализованы неплохие фреймворки (незнаю, корректно ли Node.js называть фреймворком...), при помощи которых так же можно заниматься серверным программированием.