2014-11-11 12 views
0

Я создаю веб-приложение, и спецификация должна использовать трехуровневую архитектуру.Как сделать бетон5 трехуровневым приложением?

Мои требования - это общее трехуровневое приложение, в котором уровень представления должен быть на одном сервере, код приложения (в данном случае это бизнес-логика и доступ к данным) на втором сервере, а база данных на третьем сервере , и первый и третий серверы никогда не должны общаться друг с другом, но должны пройти через средний сервер приложений.

Кто-нибудь знает, могу ли я использовать cms concrete5 для выполнения этой задачи, поскольку это неотъемлемая часть моего общего рабочего процесса. Я знаю, что он использует трехслойную архитектуру приложения, но не слишком уверен, могу ли я преобразовать это в трехуровневое приложение?

, если у кого есть какие-либо сведения о том, как это можно было сделать или было сделано на drupal или wordpress, которые будут оценены?

ответ

2

Вы не можете разделить ваше приложение на разных серверах с помощью Concrete5. База данных может определенно находиться на другом сервере, но уровень представления и уровень доступа к логике/доступу к данным все связаны друг с другом в 1 систему, если вы используете Concrete5 (это справедливо для большинства CMS ... они предназначены для объединения все эти функции вместе, чтобы упростить создание сайтов).

Если вам не нужны слои презентации и бизнеса на отдельных серверах, вы можете, конечно, поддерживать концептуальную «трехуровневую архитектуру» с использованием C5. В основном вы просто вводите свою бизнес-логику в модели (классы), затем используйте «single_pages» и «blocks», чтобы служить в качестве уровня представления. Вот некоторый код шаблона, который я использую для создания пользовательских частей бизнес-логики моих сайтов C5: https://github.com/jordanlev/c5_boilerplate_crud - возможно, это будет полезно для демонстрации того, как структурировать ваш код более чисто.