Итак, я понимаю основы изоморфного рендеринга с помощью React/Node, но не понимаю, как мне вписать Apache или NGINX в мою среду.
Как правило, со страницей на стороне клиента я бы просто обслуживал статический контент из Apache или NGINX, а страница на стороне клиента выполняла бы вызовы AJAX (которые пересылаются через Apache или NGINX) в Node. Node будет обслуживать данные, и страница изменится соответствующим образом.
Глядя на изоморфную страницу с React, страница изначально отображается на сервере Node, а изменения передаются клиенту с сервера. Могу ли я по-прежнему использовать Apache или NGINX для балансировки нагрузки и обратного прокси-сервера для моих запросов?
Например, у меня будет один экземпляр Node, обслуживающий мой API, и один экземпляр Node для рендеринга React и его обслуживания клиенту. В этом примере, могу ли я сбалансировать нагрузку, использовать обратное прокси для своих вызовов и обслуживать свои пакеты .js и .css из Apache/NGINX? В этом примере пользователь получит доступ к www.example.com/, который сначала перейдет к Apache/NGINX, который перевернет прокси-вызов на сервер Node, который отобразит страницу и предоставит ее клиенту. Затем на странице клиент нажмет какую-нибудь кнопку и получит доступ к www.example.com/api/test, а также перейдет к Apache/NGINX и обратному прокси-серверу ко второму экземпляру Node, который будет передавать данные обратно клиенту. . Или следует нажать эту кнопку, чтобы вернуться к первому экземпляру Node (где происходит рендеринг), и этот экземпляр Node вызывает второй экземпляр Node, чтобы получить данные, визуализировать новую часть и вернуть ее клиенту?
По сути, я хочу изоморфное приложение со всеми преимуществами использования Apache или NGINX перед моими серверами Node. Это возможно и / или лучшая практика? Если нет, то каков идеальный ландшафт для изоморфного приложения, чтобы я мог по-прежнему поддерживать все преимущества Apache или NGINX в качестве точки входа в свое веб-приложение?