avenikolay
@avenikolay
Коля

Правильным ли будет мое решение для крупного проекта?

Мы пишем достаточно крупный проект. Я предложил использовать следующее решение:
Клиент (браузер)
↑↓ post-, get- запросы
example.com (PHP + Laravel) - отвечает за валидацию, отрисовку данных, ответ клиенту
↑↓ curl-запрос
api.example.com (Node.js + Express) - отвечает за запросы к БД
↑↓ запрос к бд
Database Server (MongoDB)

Обосную почему я так захотел:
  1. Мы не можем использовать SPA-приложение, так как важен Server Side Rendering, базовый функционал должен быть доступен при отключенном js у клиента
  2. Я неплохо шарю во фронтенде и не могу доверить эту роль своему напарнику. Мне придется много заморачиваться над отрисовкой шаблонов, валидацией, редактурой текста, дизайном, ошибками итд. Я знаком только с разработкой на PHP, но ничего не понимаю в Node.JS и NoSQL бд
  3. Мой напарник хорошо умеет создавать API-сервисы, создает мобильные приложения, но ничего не понимает UI/UX, визуальной логике, верстке и грамматике русского языка :)
  4. MongoDB выбрана из-за БЕСКОНЕЧНО (известно точно!) разрастающейся структуры данных.
  5. Слой Laravel + PHP должен отвечать за веб-приложение. Помимо этого будут мобильные приложения, а так же другие сервисы, которые должны работать с ядром (в нашем случае Node.js). То есть предположительно хотим отделить ядро от приложений, к которому можно будет подсоединить бесконечное количество сервисов.

Насколько это правильное решение? Не будет ли минусов по скорости и производительности хотя бы на первых порах?
  • Вопрос задан
  • 482 просмотра
Пригласить эксперта
Ответы на вопрос 3
@BorisKorobkov
Web developer
Laravel (как и чистый PHP) прекрасно умеет работать с БД.
API не нужно, лишнее усложнение.

Клиент (браузер)
↑↓ post-, get- запросы
example.com (любой ЯП и фреймворк на ваш выбор) - отвечает за валидацию, запросы к БД, отрисовку данных, ответ клиенту
↑↓ запрос к бд
Database Server (любая БД на ваш выбор)
Ответ написан
Sanes
@Sanes
базовый функционал должен быть доступен при отключенном js у клиента

Необоснованные доп. расходы.
Ответ написан
Комментировать
Robur
@Robur
Знаю больше чем это необходимо
Вам нужно расставить приоритеты. У вас очевидно приоритет - подключить Васю во что бы то ни стало, так что правильно или неправильно в вашем случае - не технический вопрос - вам надо в теги про стартапы и обсуждать взаимодействие и пользу фаундеров, как строить отношения и все такое.

По самой схеме nodejs действительно не нужен - потратьте пару дней на то чтобы прочитать как работать с БД из laravel - это будет меньше по усилиям чем прикручивать туда внешнее Васино api и налаживать чтоб это все нормально работало. Судя по всему все остальное вы уже и так взяли на себя, так что польза Васи для проекта крайне сомнительна.
Ответ написан
Ваш ответ на вопрос

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

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