This document will detail how the application will be
deployed and describe the approach taken in its development. Then, it will outline
key framework technologies, server environment, server requirements, how you
might deploy to other server environments, load balancing, ways of enhancing
performance further and SEO.
After the Yii2 upload to the FTP server and set up the
database linking, I design the database model at vertabelo.com and then export
it as a sql file. Then import the query to the database. Next, use the model
generator and CRUD generator from gii to create the front-end page. Further, the
basic Yii2 framework web application is up and running.
Key Framework Technologies
Yii Is a free open source PHP Framework for developing web
applications first released in 2008 using PHP 5.1.0 or above. After that, Yii2
was released 2014 using PHP 5.4.0 or above. It helps develop clean and reusable
code following the MVC pattern as it separates logic and presentation. It also only
loads the features that you need and includes input validation, output
filtering. Full stack framework using proven and ready to use features. Besides,
it has good extension architecture to use or develop redistributable
My web server and database is provided by the Teesside University.
The database is installed with MySQL and phpMyAdmin for management. As for the
web server, it is using Apache HTTP server and installed other php extension for
the Yii2 framework requirement.
It fit on an Apache HTTP server or a Nginx HTTP server, on
Windows, Mac OS X, or Linux running PHP 5.4 or higher. Yii 2.0 is also
compatible with facebook’s HHVM. However, sometime HHVM behave differently, so need
to be careful when using HHVM. Compare to other framework, for example, ASP.NET
framework also required Visual Studio and to install the ASP.NET software, Yii2
is way easier than that.
A load balancer is a device that distributes network or
application traffic across a cluster of servers. Load balancing improves
responsiveness and increases availability of applications.
A load balancer sits between the client and the server farm
accepting incoming network and application traffic and distributing the traffic
across multiple backend servers using various methods. By balancing application
requests across multiple servers, a load balancer reduces individual server
load and prevents any one application server from becoming a single point of
failure, thus improving overall application availability and responsiveness.