Architecture Style of Drupal for Implementing User Interfaces |
You might have already known that, Drupal is the best platform for web content management which is a powerful tool for building simple to complex websites. In this chapter, we are going to discuss some of the architectural styles of Drupal for implementing user interfaces. The following diagram shows the architecture of Drupal:
The architecture of Drupal contains the following layers:
- Users
- Administrator
- Drupal
- PHP
- Web Server
- Database
Users
These are the users of the Drupal community. The user sends a request to a server using Drupal CMS and where web browsers, search engines, etc act like clients.
Administrator
Administrators can provide access permission to authorized users and will be able to block unauthorized access. The Administrative account will be having all privileges for managing content and administering the site.
Drupal
Drupal is free as well as the open source Content Management System (CMS) that allows organizing, managing, and publishing your content and built on PHP based environments. Drupal CMS is very flexible and powerful and can be used for building large, complex sites. It is an easy way of interacting with other sites and technologies using Drupal CMS. Further, you will be able to handle complex forms and workflows.
PHP
Drupal uses PHP in order to work with an application that is created by a user. It takes the help of webserver to fetch data from the database. PHP memory requirements depend on the modules which are used in your site. Drupal 6 requires at least 16MB, Drupal 7 requires 32MB and Drupal 8 requires 64MB.
Web Server
Web server is a server where the user interacts and processes requests via HTTP (Hyper-Text Transfer Protocol) and serves files that form web pages to web users. The communication between user and server takes place using HTTP. You can use different types of web servers such as Apache, IIS, Nginx, Lighttpd, etc.
Database
The database stores the user information, content, and many more required data of the site. It is used to store the administrative information to manage the Drupal site. Drupal uses the database to extract the data from a database and enables it to store, modify, and update the database.