@achuraev

Какая архитектура лучше с точки зрения производительности и масштабируемости?

Сразу: понятно что для каждого проекта нужна своя архитектура и не бывает шаблонов, когда речь заходит про хайлоад.

Часто бывают решения в виде разделения серверов на front (для рэндеринга страниц) и back (для API). В моем случае разработка на node в режиме кластера с баллансировщиком на nginx. Каждый воркер ноды предоставляет и АПИ часть и рэндеринг страницы и вроде бы это должно быть хорошо, т.к. в ноде io ассинхронный. За счет того, что все сервера идентичны - их просто масштабировать и деплойтить (можно в итоге оставить 2 сервера и по одному отключать с разделенной архитектурой нужно 4). И мой вопрос в том, что используя другую архитектуру с разделением на АПИ сервера на ноде и сервера под фронт (допустим на apache+php) можно что-то выиграть? Интересно, может кто-то тэстировал производительность рэндеринга ноды против apache+php.

PS - Отказываться от серверного рэндеринга и уходить на ангуляр 2 (например) не вариант.
  • Вопрос задан
  • 276 просмотров
Пригласить эксперта
Ответы на вопрос 3
VoidVolker
@VoidVolker
Dark side eye. А у нас печеньки! А у вас?
Адаптированная под конкретные задачи.
  1. Формализуйте задачи, которые должна решать архитектура вашего конкретного проекта.
  2. Проведите нагрузочное тестирование системы в соответствии с задачами.
  3. Постройте графики и диаграммы по результатам.
  4. Исследуйте результат и найдите узкие места.
  5. Оптимизируйте узкие места соответственно задачам.
  6. Profit.
Ответ написан
Что дешевле, запросить сервер который генерит фронт, который запросит АПИ, или просто запросить АПИ? Что Angular, что React, что Vue поддерживают серверсайд рендеринг, и пользователь при заходе на сайт вполне может получить отрендеренную страницу, а дальше грузить только АПИ.
Ответ написан
Dugnist
@Dugnist
Fullstack Node.js Developer (JSBerry, React, Vue)
Если речь о модульной архитектуре, предлагаю посмотреть:
https://github.com/Dugnist/jsberry
Буду рад форкам или контрибьюторам...)
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы