How to make concrete5 a 3-tier application?

195 views Asked by At

I am building a web application, and the specification is to use three tier architecture.

My requirements are a general 3 tier application where the presentation layer had to be on one server, the application code (in this case it was business logic and data access) on a second server, and the database on the third server, and the first and third servers should never communicate with each other, but had to go through the middle app server.

Does anyone know if i can use the cms concrete5 to perform this task, as it is an integral part to my general workflow. I know that it uses a 3 layered application architecture but not too sure if i can convert this into a 3 tier application?

if anyone has any insights to how this could or has been done on drupal or wordpress that would be appreciated?

1

There are 1 answers

0
Jordan Lev On BEST ANSWER

You can't have your application split up amongst different servers using Concrete5. The database can definitely be on a different server, but the presentation layer and the biz logic / data access layer are all tied together into 1 system if you're using Concrete5 (this is true for most CMS's... they are intended to combine all of that functionality together to make building sites simpler).

If, however, you don't need the presentation and business layers to be on separate servers, you can certainly maintain a conceptual "3-tier architecture" using C5. Basically you just put your business logic into models (classes), then use "single_pages" and "blocks" to serve as the presentation layer. Here is some boilerplate code I use for building custom business logic portions of my C5 sites: https://github.com/jordanlev/c5_boilerplate_crud -- perhaps that will be useful in demonstrating how to structure your code more cleanly.